SlideShare uma empresa Scribd logo
1 de 28
Name: ARVIND SINGH RATHOD
ID: 213110090
Company: DIGITALENDPOINT
Report date: 23/10/2016
FINAL REPORT
The DIGITAL ENDPOINT GROUP was founded in 2010, before it used to be Vervata Co Ltd.
The Digital Endpoint Group was founded by Atir Raihan, a serial technology entrepreneur with an over
a decade of experience and a deep passion for monitoring and reporting technologies. As I mentioned
that before this company used to be Vervata. Achieving great success exited from previous ventures in
the space Atir and his team are now focused on building KnowIT a cloud based productivity and
compliance platform designed to help businesses maximize the productivity of their workforce. Digital
Endpoint is established in the USA and Hong Kong, with offices in London and Bangkok and has over a
decade of experience in the design, development, support and marketing of monitoring technology
products. All our technology is developed completely in-house and covers Windows, Mac, iOS,
Android, BB OS, Symbian as well as a long list of server side technologies.
1
Digital Endpoints main mission is to increase the productivity and security of every modern business on
the planet, by providing them a complete understanding of how their business computing devices are
being used by their employees which thereby delivering the insights to let them make better business
decisions. It is in their nature to discover fresh new ways by blending business models, support options,
Internet and Platform technologies and to overcome the difficulties that prevent so many businesses
enjoying the bottom line benefits that technology promises. They produce their imagination of future
through our KnowIT product, which is a cloud based set of components created to work on all
commonly used operating systems including Windows, Mac, iOS and Android platforms, and is
available to even the small scale businesses through subscriptions. They believe that gain for its own
sake suppress innovation and does not contribute nicely way in the long term to the community,
therefore their aims are inspire by two things. The first is to be able to give their employees and
suppliers the opportunity to secure the quality of life that they and their families want to. The second is
to have the time and freedom to experiment with new ideas, even if there is a chance of failure. This
beliefs allows us to offer specializations designed to particular business needs, instead of forcing them to
accept compromises and is the basis of long term, sustainable success for them and their customers.
2
The main product of Digital Endpoint is KnowIT and Story behind its discovery is really fascinating.
KnowIT was innovated from the suffering and hard work of their search for an employee monitoring
solution after they discovered the theft of company intellectual property from other and their own
company. While working on a previous venture a project manager noticed an employee of three years
standing Skyping to another previous employee in a manner that raised suspicion. The situation was so
extreme that the decision was made to examine the employee's Skype logs. To their horror, they
discovered these two individuals were not only using Skype in order to steal any and every company IP
they could put their hands on, but had already set up a competing operation based entirely on the IP
they'd already stolen. The evidence was convincible and posted an immediate threat to the very
existence of the company. What was needed was a procedure to monitor the activity in order to
determine how much damage had already been done. With no previous experience with this type of
crisis owner (Atir) started a frantic search to see what Employee Monitoring solutions were available on
the market. The results he came up with were confusing dozens of websites with very little clear factual
information touting products that lacked a feature set sufficient to support the issues they were
struggling with. A lack of alternatives and a deadline situation forced us to purchase any non-reliable
products that required a team of three IT admin staff several days to set up, but not to mention the
purchase of dedicated servers, and licenses had to be renewed annually, and in advance. The worst thing
was that after a year, the system had fallen into disuse, and ended up simply gathering dust. The only
reason we remembered it, were the endless emails from the vendor offering ever increasing discounts for
renewal. The struggle of this experience and following discussions with other business owners made
them realize there was an opportunity in the market to develop a better employee monitoring platform.
one that anyone could install and test instantly, without having to commit to long term payments or
hiring a team of specific individuals to implement.
The Main product of this company is KnowIT.
3
KnowIT is the cloud based employee monitoring system that allows you to see exactly what your
employees are doing on company issued devices, and estimates how productive they are based on the
applications they use and their attendance levels. Basically it used for monitoring all the activity done by
your employee during their work hour and can also be used to monitor other specific scenarios. KnowIT
works with PC, Mac, iPhone and Android, requires no hardware or IT training. You can easily install it
and running in a moment. Use KnowIT to monitor and record employee activity such as:
 Instant Messaging (Facebook, Skype, LINE, QQ, Yahoo).
 Social media activity.
 Web based email
 Application usage
 Web history and keystrokes
4
All the information/data is collected from all the company devices and presented in easy to understand
charts through a responsive web interface. KnowIT monitors USB and Bluetooth connections, and file
transfers so you don't need to worry about data stealing. KnowIT attendance monitoring captures
computer login, door entry and manager assigned absence and holiday information. Create and send
productivity and attendance reports directly to your employees and reduce the need for manager and
employee confrontations at the real work environment. KnowIT is their promise that no business will
ever have to face the challenges they have. Employee Optimization Software delivered as service
designed from the ground up to be fair to employers and employees in an effort to create better,
pleasanter and more secure work environment. KnowIT has more features than any other cloud based
monitoring solution. Every feature was created to address a specific business problem that we also
faced, which is why we know that you will also find them practical and useful. With over 50 powerful
features, optional biometric sensors, cloud customization services and desktop and mobile support,
KnowIT is able to help a business of any size who wishes to improve employee productivity and
improve security at the work place.
During this internship I have learnt a lot about how to work in a professional environment and most
importantly working as a team. To get this internship I had to go through a personal interview and a
mock up Java simulation test. On my first day at the job I have introduce by every single employee
working there and then I was given my own desk equipped with all the important stuff needed to do my
job. I also got to know about my company history and its products. My HR asked to go through the
company’s website. I also came to know about the teams working in the company. Initially, I was hired
as a Java Developer but later they decided to put me with the Testing Team and my official job title was
software tester. My supervisor told me to set up Robot framework environment for automation testing as
I was about to work on designing automation suites. So I started researching about the automation and
Robot framework. From my first day at the company as an intern to the till now I have learnt about the
Robot Framework and Its Conceptual Architecture. Now, I also have quite good understanding about the
5
libraries used in the Robot Framework such as Selenium Library, Selinium2Library, AutoIT Library,
Collections, String, OS, Date Time and BuiltIn Library. So far I have designed several test suites and
tested them hundreds of times using this technology. In addition to that I have learnt a little about batch
file to be able to run all these suites together. Robot Framework follow Keyword Driven and Data
Driven Styles that makes it easier for even a non-technical Personal to understand the code. So I had to
learn how these keywords are created and how the overall concept of coding in Robot framework Works
to design Test Cases and Test Suites. To design the planning of these Test Suites I learnt bit about the
UML diagram using Enterprise Architect Tool. Throughout the process I also got to see the use of
python and javafx 8 for the UI execution in various Test suites using Listener Interface. In addition, I
was told get to know the Tortoise version control tool. Designing all those test suites, I have analyzed
many tricks and issues related to the automation process. During our process I have learnt many other
automation tools such as Selenium IDE, Sikulix etc, but we try to put our most of focus on Sikulix and
designed several Suite with this tool as well. Later I get to know the basic understanding about javafx 8
and python and sikulix. I built several suites using sikulix tool. However, because of its unstable nature
to the Html elements. So we stop working on it and gone back to the Robot framework. We continued
with the Robot Framework and so far we have successful in automating the knowIT monitotring
application and Fexispy application. At the end of Third month I have designed many suites with Robot
framework and created many batch file for those suites. My sole task is to design and test the test suites.
My first four days as an intern I have gone through the documentation of Robot framework as I didn’t
have any knowledge about this technology. After one week I started to design test suites on Atom
edition using robot framework and its keywords.
The main tasks I have performed during this internship are:
 Automating KnowIT test portal (https://test-portal.digitalendpoint.com (Private server link))
 Automating Flexispy Purchase and Refund Process (https://www.flexispy.com/ )
6
• Automating KnowIT test portal: Aim was to see if all the features of knowIT captures and
monitors the activity on PC. Here are the some snapshots of the KnowIT Portal:
7
8
9
• Automating Flexispy Purchase: Aim was to automate the purchasing process of Flexispy
product of the company. Here are the some snapshots of the automation:
10
11
For these above Automation to be possible the test suites I have worked on are:
12
Automation Test Tool on Blueblood (KnowIT Portal Auotmation)
Introduction
The following features are covered in the automation test tool on Blueblood.
- Application Usage
- File Activity
- File Transfer
- Key Logs
- Browser Search Terms
- Browser Capture
- Browser Video Capture
Application Usage
Purpose: To automate the application usage event generated by a user when working on a certain
application
Scope: This test suite is conducted on the following applications – Notepad, Microsoft Word and
Microsoft Excel
Limitation:
• The test suite performs best on Chrome, and unable to run on Internet Explorer
• The test suite only emphasizes the application name, application title and date that the event is
generated. Usage time is ignored due to uncertainty of the opening application and closing
application time of the automation tool.
13
File Activity
Purpose: To automate the file activity event generated by a user and verify whether Blueblood can
correctly capture such event
Scope: This test suite is conducted on Notepad file as the file is simple and easy to interpret when
comparing the result with what displayed on Blueblood
Limitation:
• The test suite performs best on Chrome, and unable to run on Internet Explorer
• Word and Excel file activity types are more complicated and generate unexpected file activity
type even when a tester tests them manually
File Transfer
Purpose: To automate the file transfer event generated by a user and verify if the event is captured
correctly by KnowIT
Scope: This test suite is divided into two major sub test suites:
• Cloud Services - Dropbox, Google Drive and One Drive
• Email Services - Gmail, Outlook Live, Outlook 365 and Yahoo
Limitation:
• This test suite is unable to run on Internet Explorer
Key Logs
Purpose: To simulate a key log event generated by a user and verify if such event can be correctly
captured by KnowIT
Scope: This test suite is divided into two major sub test suites:
• Application - Notepad, Microsoft Word, Microsoft Excel and Microsoft Onenote
14
• Browser - Chrome and Firefox
Limitation:
• This test suite is unable to run on Internet Explorer
• Avoid testing on Microsoft Excel as sometimes the single key log event is unexpectedly split
into two events, causing the failure on this test case (Known issue on developer side)
Browser Search Terms
Purpose: To simulate a search term event generated by a user and verify if such event can be correctly
captured by KnowIT
Scope: This test suite covers the following search engines - Google, Yahoo, Bing, Ask, Dogpile, Duck
Duck Go, Baidu, Nate, AOL, NAVER and ZUM
Limitation:
• This test suite can run on Chrome only
Browser Capture
Purpose: To simulate a browser capture event generated by a user and verify if such event can be
correctly captured by KnowIT
Scope: This test simply opens any random website and check if such website can be captured correctly
by KnowIT
Limitation:
• This test suite can run on Chrome only
• On Virtual Machine (Windows 7), this feature is not operable
15
Browser Video Capture
Purpose: To simulate a browser video capture event generated by a user and verify if such event can
be correctly captured by KnowIT
Scope: This test suite covers two video websites – Youtube and Vimeo
Limitation:
• This test suite can run on Chrome only
• On Virtual Machine (Windows 7), this feature is not operable
Instructions
Tool Setup
1. Checkout the tool from the following SVN
https://svnexternal.vervata.com/svn/TestAutomation/Developers/trunk
2. Navigate to Resources > config_variables.robot and configure the following items to comply
with your test environment. In general, five items - ${KNOWIT_USERNAME}, $
{KNOWIT_PASSWORD}, ${PC_NAME}, ${SCREENX}, ${SCREENY} - are required to
change in order to automate the test on the expected machine
16
3. [OPTIONAL] For file transfer test, if you do not wish to use default test emails, you can modify
them in Resources > common_variables.robot. The following variables are customizable.
17
Gmail & Google Drive : ${GOOGLE_USERNAME}, ${GOOGLE_PASSWORD}
Yahoo : ${YAHOO_USERNAME}, ${YAHOO_PASSWORD}
Microsoft : ${MICROSOFT_USERNAME}, ${MICROSOFT_PASSWORD}
OFFICE365 : ${OFFICE365_USERNAME}, ${OFFICE365_PASSWORD}
4. Check the path to your MS Excel, MS Onenote, MS Word before running Key_Logs and
App_Usage_Capture as the version under test varies from machine to machine, so does path to
these applications. Path to application is defined in Resources > config_variables.robot
18
Running automation test
1. To run the test, navigate to the folder where the tool is stored and go to ‘Tests’ folder
2. Choose any test suite you wish to run a test, and double –click on the batch file. For instance, if
you run Key_Logs, double-click on automate_Key_Logs.bat (Extension for Batch File)
3. Once clicked, the file will run all test cases in the test suite. Once completed, generated report
file and XML output file will appear in the same folder.
19
4. [OPTIONAL] If you want to run any failed test case without rerunning the entire test cases, you
can run any file ending with ‘rerun’ (e.g. automate_browser_search_terms_rerun.bat). This file
runs only failed tests and merges the result with the original one. Nevertheless, currently only
some test suites have this rerun file available.
Flexispy Payment and Refund Process Automation
Introduction
The following features are covered in this automation test.
• Purchase a product on Flexispy
Purchase a product on Flexispy
Purpose: To verify if a purchase order on a Flexispy product sends a welcome Email to the target email
Scope: The following parameters are verified in this test case
• Thank you page
• Welcome Email or Product Purchase Confirmation Email
Supported Email Services:
20
• Gmail
Procedures:
1. The automation tool enter https:www.flexispy.com
2. Click ‘Buy Now’
3. Choose a Flexispy Product
4. Fill in Email and billing information
5. Fill in credit Card information
6. Verify if Thank you page appears after completing the purchase
7. Open an Email and check if an activation code email from Flexispy exists
Additionally, this test suite sends a refund request email along with reference ID given in the content
of welcome email as detailed in the following steps.
1. Open the latest Flexispy Email and locate the reference ID
2. Capture the reference ID and compose an email for refund process along with that ID
3. Delete that email after sending it
Test Instructions
1. Run Flexispy_Purchase_Order.bat located in the outermost folder of “Automation Test”
2. While running the test, do not interrupt the tool by pressing any key or move the mouse
3. Once completed, the tool immediately opens the report and stores the result in
“R:_TestTeamAutomated TestReports” as a folder named
“report_Flexispy_Purchase_Order_DD-MM-YYYY_HHMM”.
21
In my internship of three month the technology I have worked on are:
 Robot Framework:
In my View, Robot Framework is a framework for designing automation test suites but in a proper
definition, Robot Framework is a generic test automation framework for acceptance testing and
acceptance test-driven development. It has easy-to-use tabular test data syntax and it utilizes the
keyword-driven testing approach. Its testing capabilities can be extended by test libraries implemented
either with Python or Java, and users can create new higher-level keywords from existing ones using the
same syntax that is used for creating test cases.
Robot framework uses teat libraries add functionality in automating test suites. Test libraries provide the
actual testing capabilities to Robot Framework by providing keywords. There are several standard
libraries that are bundled in with the framework, and galore of separately developed external libraries
that can be installed based on your needs.
22
 Sikulix:
In my opinion SikuliX is a automation tool depend on image recognition. SikuliX automates anything
you see on the screen of your desktop computer running Windows, Mac or some Linux/Unix. It uses
23
image recognition powered by OpenCV to identify and control GUI components. This is handy in cases
when there is no easy access to a GUI's internals or the source code of the application or web page you
want to act on. SikuliX comes with basic text recognition (OCR) and can be used to search text in
images.
SikuliX is most commonly used to perform repetitive tasks such as:
 Process of automating administration of IT systems and networks.
 Going through the same website or portal every single day.
 Automating the game testing.
 Constantlty usage of applications.
 Python:
During my automation testing I mostly used python in sikulix for designing automation test suites.
Python is a clear and powerful object-oriented programming language, comparable to Perl, Ruby,
Scheme, or Java. Python's simple, easy to learn syntax emphasizes readability and therefore reduces
24
the cost of program maintenance. Python supports modules and packages, which encourages
program modularity and code reuse. The Python interpreter and the extensive standard library are
available in source or binary form without charge for all major platforms, and can be freely
distributed.
Some amazing programming-language features of Python are:
 A variety of basic data types are available: numbers (floating point, complex, and unlimited-
length long integers), strings (both ASCII and Unicode), lists, and dictionaries.
 Python supports object-oriented programming with classes and multiple inheritance.
 Code can be grouped into modules and packages.
 The language supports raising and catching exceptions, resulting in cleaner error handling.
 JavaFx:
JavaFX is a set of graphics and media packages that enables developers to design, create, test,
debug, and deploy rich client applications that operate consistently across diverse platforms. The
look and feel of JavaFX applications can be customized. Cascading Style Sheets separate
appearance and style from implementation so that developers can concentrate on coding. Graphic
designers can easily customize the appearance and style of the application through the CSS. If
25
you have a web design background, or if you would like to separate the user interface and the
back-end logic.
Key features of JavaFx are:
 Java APIs.
 FXML and Scene Builder.
 Web View
 Swing interoperability
 Built-in UI controls and CSS.
 Modena theme
 Batch:
In designing test suites I used batch script to create a batch file so that I am able to run all the test suites
at once. In a computer, a batch job is a program that is assigned to the computer to run without further
user interaction. Examples of batch jobs in a PC are a printing request or an analysis of a Web site log.
In larger commercial computers or servers, batch jobs are usually initiated by a system user. Some are
defined to run automatically at a certain time, a batch file has the file name extension ".BAT".
26
As I explained in my all my report that I am working with
the automation tool. I believe the subjects that helped me were -- Special Project, Programming I,
Programming II and Web Development I. These are the subjects that I have learned at Stamford are
helping me in my Internship. Special Project is subject that helped me a lot in working on huge
projects and getting used to the idea of large no. of files in a project and working a professional way.
Plus, doing your specific task on time. Punctuality is something that I have learned from this subject.
The whole idea of this subject was to give students an idea how the real life IT environment project
is going to be. In addition, Programming I and II are the subjects where I discovered and grabbed my
all programming skills. From basic level of java programming in Programming I to the Advanced
level of programming where all the basic was covered. As we all know that whatever programming
language. In my view, this internship will definitely change my career path in a very positive ways
and will open enormous number of opportunities for me in future. So far in this internship, I have
learnt lot of things and I am still learning. As I have never work before in any IT company, this has
been a great experience for me to get to know the real IT working environment as well as about the
teamwork and doing job on deadline. At the internship, I will have three months experience as a
website developer with some new extra skill I have leant here. This will help me look better in my
resume. At the end, I would say of course it will reflect my original perception of this career
considering all the points I have mentioned in this report. Considering the fact I will be able to gain
experience that will definitely help me with my future career. As far as I am concerned, during this
internship, I have worked on several Robot Framework project and built many reports that is coded
using Library Keywords which I never learnt or worked on before. It was quite a challenge for me
because I was facing problems in understanding the code. So I have been studying and researching
about these libraries while working on project as well. However, I have worked on coding projects
before, but working on Robot framework is another thing because of different syntax and
approaches. In addition, every task is really time consuming for me as I have never worked before
on Test Suites projects. So I am also working on my speed of understanding thing quickly. Apart
27
from these problems, we were involved in these projects in middle of its development. It’s really
difficult for me to cop up with the speed of project. In the process I have to analyze the whole
project consisting of lots of files coded by some other guy. Which was quite difficult for me to find
the exact coding and understand it and how does it works, because I didn’t code it. But somehow I
did able to catch up with the current developments and finished most of my task related to the
automation suites. My main motto that I followed all these time in my internship was to keep
working hard and never give up. The most important I believe that I have achieved from this
internship is that I got to work in an Auotmation field which I have never done before. On the whole,
it was a great experience and will definitely help me in my future career.
Reference:
http://docs.oracle.com/javafx/2/layout/jfxpub-layout.htm
http://docs.oracle.com/javase/8/javase-clienttechnologies.htm
file:///C:/RobotFramework/Extensions/AutoItLibrary/AutoItLibrary.html
https://www.autoitscript.com/autoit3/docs/functions/
https://www.digitalendpoint.com
https://www.flexispy.com/
http://robotframework.org/robotframework/
http://doc.sikuli.org/
28

Mais conteúdo relacionado

Mais procurados

DevOps Indonesia Meetup [ONLINE] - Secure your container within 30 minutes - ...
DevOps Indonesia Meetup [ONLINE] - Secure your container within 30 minutes - ...DevOps Indonesia Meetup [ONLINE] - Secure your container within 30 minutes - ...
DevOps Indonesia Meetup [ONLINE] - Secure your container within 30 minutes - ...DevOps Indonesia
 
How to avoid cascading failures in microservices and evolving to serverless
How to avoid cascading failures in microservices and evolving to serverlessHow to avoid cascading failures in microservices and evolving to serverless
How to avoid cascading failures in microservices and evolving to serverlessDevOps Indonesia
 
Debunking DevOps Myths in Banking Industry
Debunking DevOps Myths in Banking IndustryDebunking DevOps Myths in Banking Industry
Debunking DevOps Myths in Banking IndustryDevOps Indonesia
 
DevOps Indonesia "Going deeper into Jenkins, Docker and even more" - Announce...
DevOps Indonesia "Going deeper into Jenkins, Docker and even more" - Announce...DevOps Indonesia "Going deeper into Jenkins, Docker and even more" - Announce...
DevOps Indonesia "Going deeper into Jenkins, Docker and even more" - Announce...DevOps Indonesia
 
My Internship at SitePro
My Internship at SiteProMy Internship at SitePro
My Internship at SiteProIsaiah Suarez
 

Mais procurados (6)

DevOps Indonesia Meetup [ONLINE] - Secure your container within 30 minutes - ...
DevOps Indonesia Meetup [ONLINE] - Secure your container within 30 minutes - ...DevOps Indonesia Meetup [ONLINE] - Secure your container within 30 minutes - ...
DevOps Indonesia Meetup [ONLINE] - Secure your container within 30 minutes - ...
 
How to avoid cascading failures in microservices and evolving to serverless
How to avoid cascading failures in microservices and evolving to serverlessHow to avoid cascading failures in microservices and evolving to serverless
How to avoid cascading failures in microservices and evolving to serverless
 
Debunking DevOps Myths in Banking Industry
Debunking DevOps Myths in Banking IndustryDebunking DevOps Myths in Banking Industry
Debunking DevOps Myths in Banking Industry
 
DevOps Indonesia "Going deeper into Jenkins, Docker and even more" - Announce...
DevOps Indonesia "Going deeper into Jenkins, Docker and even more" - Announce...DevOps Indonesia "Going deeper into Jenkins, Docker and even more" - Announce...
DevOps Indonesia "Going deeper into Jenkins, Docker and even more" - Announce...
 
My Internship at SitePro
My Internship at SiteProMy Internship at SitePro
My Internship at SitePro
 
Introduction to Eclipse Che
Introduction to Eclipse CheIntroduction to Eclipse Che
Introduction to Eclipse Che
 

Semelhante a Final Report_213110090

Freelancer profile / Pasi Vuorio
Freelancer profile / Pasi VuorioFreelancer profile / Pasi Vuorio
Freelancer profile / Pasi VuorioPasi Vuorio
 
Role of CMS & Webservices - Mobile Apps
Role of CMS & Webservices - Mobile AppsRole of CMS & Webservices - Mobile Apps
Role of CMS & Webservices - Mobile AppsDivya Jyot
 
Mainstream development presentation
Mainstream development presentationMainstream development presentation
Mainstream development presentationAnna Vyrostak
 
Wide Vision Project Development Methodology
Wide Vision Project Development MethodologyWide Vision Project Development Methodology
Wide Vision Project Development MethodologyWide Vision Technologies
 
Full Stack Web Development Basics to Know.pdf
Full Stack Web Development Basics to Know.pdfFull Stack Web Development Basics to Know.pdf
Full Stack Web Development Basics to Know.pdfLaura Miller
 
Internet of Things Brings On Development Demands That DevOps Manages, Say Exp...
Internet of Things Brings On Development Demands That DevOps Manages, Say Exp...Internet of Things Brings On Development Demands That DevOps Manages, Say Exp...
Internet of Things Brings On Development Demands That DevOps Manages, Say Exp...Dana Gardner
 
06 operations and feedback
06   operations and feedback06   operations and feedback
06 operations and feedbackClemens Reijnen
 
2021-10-14 The Critical Role of Security in DevOps.pdf
2021-10-14 The Critical Role of Security in DevOps.pdf2021-10-14 The Critical Role of Security in DevOps.pdf
2021-10-14 The Critical Role of Security in DevOps.pdfSavinder Puri
 
Business plan of a software house
Business plan of a software houseBusiness plan of a software house
Business plan of a software houseFarwa Ansari
 
Best Customize Facility Management Software
Best Customize Facility Management SoftwareBest Customize Facility Management Software
Best Customize Facility Management SoftwareJayesh Kitukale
 
Mohit Gupta Resume
Mohit Gupta ResumeMohit Gupta Resume
Mohit Gupta ResumeMOHIT GUPTA
 
Un Microsystem Company Analysis Essay
Un Microsystem Company Analysis EssayUn Microsystem Company Analysis Essay
Un Microsystem Company Analysis EssayRikki Wright
 

Semelhante a Final Report_213110090 (20)

Madhusmita mohanty_MohantyCV
Madhusmita mohanty_MohantyCVMadhusmita mohanty_MohantyCV
Madhusmita mohanty_MohantyCV
 
12 top app testing tools
12 top app testing tools12 top app testing tools
12 top app testing tools
 
Freelancer profile / Pasi Vuorio
Freelancer profile / Pasi VuorioFreelancer profile / Pasi Vuorio
Freelancer profile / Pasi Vuorio
 
IOT Consulting Service in Bangalore
IOT Consulting Service in BangaloreIOT Consulting Service in Bangalore
IOT Consulting Service in Bangalore
 
Nitin bondre
Nitin bondreNitin bondre
Nitin bondre
 
Role of CMS & Webservices - Mobile Apps
Role of CMS & Webservices - Mobile AppsRole of CMS & Webservices - Mobile Apps
Role of CMS & Webservices - Mobile Apps
 
Resume
ResumeResume
Resume
 
PHP Developer
PHP DeveloperPHP Developer
PHP Developer
 
Mainstream development presentation
Mainstream development presentationMainstream development presentation
Mainstream development presentation
 
Wide Vision Project Development Methodology
Wide Vision Project Development MethodologyWide Vision Project Development Methodology
Wide Vision Project Development Methodology
 
Full Stack Web Development Basics to Know.pdf
Full Stack Web Development Basics to Know.pdfFull Stack Web Development Basics to Know.pdf
Full Stack Web Development Basics to Know.pdf
 
Internet of Things Brings On Development Demands That DevOps Manages, Say Exp...
Internet of Things Brings On Development Demands That DevOps Manages, Say Exp...Internet of Things Brings On Development Demands That DevOps Manages, Say Exp...
Internet of Things Brings On Development Demands That DevOps Manages, Say Exp...
 
06 operations and feedback
06   operations and feedback06   operations and feedback
06 operations and feedback
 
2021-10-14 The Critical Role of Security in DevOps.pdf
2021-10-14 The Critical Role of Security in DevOps.pdf2021-10-14 The Critical Role of Security in DevOps.pdf
2021-10-14 The Critical Role of Security in DevOps.pdf
 
Business plan of a software house
Business plan of a software houseBusiness plan of a software house
Business plan of a software house
 
Kasi Viswanath
Kasi ViswanathKasi Viswanath
Kasi Viswanath
 
Empowered productivity
Empowered productivityEmpowered productivity
Empowered productivity
 
Best Customize Facility Management Software
Best Customize Facility Management SoftwareBest Customize Facility Management Software
Best Customize Facility Management Software
 
Mohit Gupta Resume
Mohit Gupta ResumeMohit Gupta Resume
Mohit Gupta Resume
 
Un Microsystem Company Analysis Essay
Un Microsystem Company Analysis EssayUn Microsystem Company Analysis Essay
Un Microsystem Company Analysis Essay
 

Final Report_213110090

  • 1. Name: ARVIND SINGH RATHOD ID: 213110090 Company: DIGITALENDPOINT Report date: 23/10/2016 FINAL REPORT The DIGITAL ENDPOINT GROUP was founded in 2010, before it used to be Vervata Co Ltd. The Digital Endpoint Group was founded by Atir Raihan, a serial technology entrepreneur with an over a decade of experience and a deep passion for monitoring and reporting technologies. As I mentioned that before this company used to be Vervata. Achieving great success exited from previous ventures in the space Atir and his team are now focused on building KnowIT a cloud based productivity and compliance platform designed to help businesses maximize the productivity of their workforce. Digital Endpoint is established in the USA and Hong Kong, with offices in London and Bangkok and has over a decade of experience in the design, development, support and marketing of monitoring technology products. All our technology is developed completely in-house and covers Windows, Mac, iOS, Android, BB OS, Symbian as well as a long list of server side technologies. 1
  • 2. Digital Endpoints main mission is to increase the productivity and security of every modern business on the planet, by providing them a complete understanding of how their business computing devices are being used by their employees which thereby delivering the insights to let them make better business decisions. It is in their nature to discover fresh new ways by blending business models, support options, Internet and Platform technologies and to overcome the difficulties that prevent so many businesses enjoying the bottom line benefits that technology promises. They produce their imagination of future through our KnowIT product, which is a cloud based set of components created to work on all commonly used operating systems including Windows, Mac, iOS and Android platforms, and is available to even the small scale businesses through subscriptions. They believe that gain for its own sake suppress innovation and does not contribute nicely way in the long term to the community, therefore their aims are inspire by two things. The first is to be able to give their employees and suppliers the opportunity to secure the quality of life that they and their families want to. The second is to have the time and freedom to experiment with new ideas, even if there is a chance of failure. This beliefs allows us to offer specializations designed to particular business needs, instead of forcing them to accept compromises and is the basis of long term, sustainable success for them and their customers. 2
  • 3. The main product of Digital Endpoint is KnowIT and Story behind its discovery is really fascinating. KnowIT was innovated from the suffering and hard work of their search for an employee monitoring solution after they discovered the theft of company intellectual property from other and their own company. While working on a previous venture a project manager noticed an employee of three years standing Skyping to another previous employee in a manner that raised suspicion. The situation was so extreme that the decision was made to examine the employee's Skype logs. To their horror, they discovered these two individuals were not only using Skype in order to steal any and every company IP they could put their hands on, but had already set up a competing operation based entirely on the IP they'd already stolen. The evidence was convincible and posted an immediate threat to the very existence of the company. What was needed was a procedure to monitor the activity in order to determine how much damage had already been done. With no previous experience with this type of crisis owner (Atir) started a frantic search to see what Employee Monitoring solutions were available on the market. The results he came up with were confusing dozens of websites with very little clear factual information touting products that lacked a feature set sufficient to support the issues they were struggling with. A lack of alternatives and a deadline situation forced us to purchase any non-reliable products that required a team of three IT admin staff several days to set up, but not to mention the purchase of dedicated servers, and licenses had to be renewed annually, and in advance. The worst thing was that after a year, the system had fallen into disuse, and ended up simply gathering dust. The only reason we remembered it, were the endless emails from the vendor offering ever increasing discounts for renewal. The struggle of this experience and following discussions with other business owners made them realize there was an opportunity in the market to develop a better employee monitoring platform. one that anyone could install and test instantly, without having to commit to long term payments or hiring a team of specific individuals to implement. The Main product of this company is KnowIT. 3
  • 4. KnowIT is the cloud based employee monitoring system that allows you to see exactly what your employees are doing on company issued devices, and estimates how productive they are based on the applications they use and their attendance levels. Basically it used for monitoring all the activity done by your employee during their work hour and can also be used to monitor other specific scenarios. KnowIT works with PC, Mac, iPhone and Android, requires no hardware or IT training. You can easily install it and running in a moment. Use KnowIT to monitor and record employee activity such as:  Instant Messaging (Facebook, Skype, LINE, QQ, Yahoo).  Social media activity.  Web based email  Application usage  Web history and keystrokes 4
  • 5. All the information/data is collected from all the company devices and presented in easy to understand charts through a responsive web interface. KnowIT monitors USB and Bluetooth connections, and file transfers so you don't need to worry about data stealing. KnowIT attendance monitoring captures computer login, door entry and manager assigned absence and holiday information. Create and send productivity and attendance reports directly to your employees and reduce the need for manager and employee confrontations at the real work environment. KnowIT is their promise that no business will ever have to face the challenges they have. Employee Optimization Software delivered as service designed from the ground up to be fair to employers and employees in an effort to create better, pleasanter and more secure work environment. KnowIT has more features than any other cloud based monitoring solution. Every feature was created to address a specific business problem that we also faced, which is why we know that you will also find them practical and useful. With over 50 powerful features, optional biometric sensors, cloud customization services and desktop and mobile support, KnowIT is able to help a business of any size who wishes to improve employee productivity and improve security at the work place. During this internship I have learnt a lot about how to work in a professional environment and most importantly working as a team. To get this internship I had to go through a personal interview and a mock up Java simulation test. On my first day at the job I have introduce by every single employee working there and then I was given my own desk equipped with all the important stuff needed to do my job. I also got to know about my company history and its products. My HR asked to go through the company’s website. I also came to know about the teams working in the company. Initially, I was hired as a Java Developer but later they decided to put me with the Testing Team and my official job title was software tester. My supervisor told me to set up Robot framework environment for automation testing as I was about to work on designing automation suites. So I started researching about the automation and Robot framework. From my first day at the company as an intern to the till now I have learnt about the Robot Framework and Its Conceptual Architecture. Now, I also have quite good understanding about the 5
  • 6. libraries used in the Robot Framework such as Selenium Library, Selinium2Library, AutoIT Library, Collections, String, OS, Date Time and BuiltIn Library. So far I have designed several test suites and tested them hundreds of times using this technology. In addition to that I have learnt a little about batch file to be able to run all these suites together. Robot Framework follow Keyword Driven and Data Driven Styles that makes it easier for even a non-technical Personal to understand the code. So I had to learn how these keywords are created and how the overall concept of coding in Robot framework Works to design Test Cases and Test Suites. To design the planning of these Test Suites I learnt bit about the UML diagram using Enterprise Architect Tool. Throughout the process I also got to see the use of python and javafx 8 for the UI execution in various Test suites using Listener Interface. In addition, I was told get to know the Tortoise version control tool. Designing all those test suites, I have analyzed many tricks and issues related to the automation process. During our process I have learnt many other automation tools such as Selenium IDE, Sikulix etc, but we try to put our most of focus on Sikulix and designed several Suite with this tool as well. Later I get to know the basic understanding about javafx 8 and python and sikulix. I built several suites using sikulix tool. However, because of its unstable nature to the Html elements. So we stop working on it and gone back to the Robot framework. We continued with the Robot Framework and so far we have successful in automating the knowIT monitotring application and Fexispy application. At the end of Third month I have designed many suites with Robot framework and created many batch file for those suites. My sole task is to design and test the test suites. My first four days as an intern I have gone through the documentation of Robot framework as I didn’t have any knowledge about this technology. After one week I started to design test suites on Atom edition using robot framework and its keywords. The main tasks I have performed during this internship are:  Automating KnowIT test portal (https://test-portal.digitalendpoint.com (Private server link))  Automating Flexispy Purchase and Refund Process (https://www.flexispy.com/ ) 6
  • 7. • Automating KnowIT test portal: Aim was to see if all the features of knowIT captures and monitors the activity on PC. Here are the some snapshots of the KnowIT Portal: 7
  • 8. 8
  • 9. 9
  • 10. • Automating Flexispy Purchase: Aim was to automate the purchasing process of Flexispy product of the company. Here are the some snapshots of the automation: 10
  • 11. 11
  • 12. For these above Automation to be possible the test suites I have worked on are: 12
  • 13. Automation Test Tool on Blueblood (KnowIT Portal Auotmation) Introduction The following features are covered in the automation test tool on Blueblood. - Application Usage - File Activity - File Transfer - Key Logs - Browser Search Terms - Browser Capture - Browser Video Capture Application Usage Purpose: To automate the application usage event generated by a user when working on a certain application Scope: This test suite is conducted on the following applications – Notepad, Microsoft Word and Microsoft Excel Limitation: • The test suite performs best on Chrome, and unable to run on Internet Explorer • The test suite only emphasizes the application name, application title and date that the event is generated. Usage time is ignored due to uncertainty of the opening application and closing application time of the automation tool. 13
  • 14. File Activity Purpose: To automate the file activity event generated by a user and verify whether Blueblood can correctly capture such event Scope: This test suite is conducted on Notepad file as the file is simple and easy to interpret when comparing the result with what displayed on Blueblood Limitation: • The test suite performs best on Chrome, and unable to run on Internet Explorer • Word and Excel file activity types are more complicated and generate unexpected file activity type even when a tester tests them manually File Transfer Purpose: To automate the file transfer event generated by a user and verify if the event is captured correctly by KnowIT Scope: This test suite is divided into two major sub test suites: • Cloud Services - Dropbox, Google Drive and One Drive • Email Services - Gmail, Outlook Live, Outlook 365 and Yahoo Limitation: • This test suite is unable to run on Internet Explorer Key Logs Purpose: To simulate a key log event generated by a user and verify if such event can be correctly captured by KnowIT Scope: This test suite is divided into two major sub test suites: • Application - Notepad, Microsoft Word, Microsoft Excel and Microsoft Onenote 14
  • 15. • Browser - Chrome and Firefox Limitation: • This test suite is unable to run on Internet Explorer • Avoid testing on Microsoft Excel as sometimes the single key log event is unexpectedly split into two events, causing the failure on this test case (Known issue on developer side) Browser Search Terms Purpose: To simulate a search term event generated by a user and verify if such event can be correctly captured by KnowIT Scope: This test suite covers the following search engines - Google, Yahoo, Bing, Ask, Dogpile, Duck Duck Go, Baidu, Nate, AOL, NAVER and ZUM Limitation: • This test suite can run on Chrome only Browser Capture Purpose: To simulate a browser capture event generated by a user and verify if such event can be correctly captured by KnowIT Scope: This test simply opens any random website and check if such website can be captured correctly by KnowIT Limitation: • This test suite can run on Chrome only • On Virtual Machine (Windows 7), this feature is not operable 15
  • 16. Browser Video Capture Purpose: To simulate a browser video capture event generated by a user and verify if such event can be correctly captured by KnowIT Scope: This test suite covers two video websites – Youtube and Vimeo Limitation: • This test suite can run on Chrome only • On Virtual Machine (Windows 7), this feature is not operable Instructions Tool Setup 1. Checkout the tool from the following SVN https://svnexternal.vervata.com/svn/TestAutomation/Developers/trunk 2. Navigate to Resources > config_variables.robot and configure the following items to comply with your test environment. In general, five items - ${KNOWIT_USERNAME}, $ {KNOWIT_PASSWORD}, ${PC_NAME}, ${SCREENX}, ${SCREENY} - are required to change in order to automate the test on the expected machine 16
  • 17. 3. [OPTIONAL] For file transfer test, if you do not wish to use default test emails, you can modify them in Resources > common_variables.robot. The following variables are customizable. 17
  • 18. Gmail & Google Drive : ${GOOGLE_USERNAME}, ${GOOGLE_PASSWORD} Yahoo : ${YAHOO_USERNAME}, ${YAHOO_PASSWORD} Microsoft : ${MICROSOFT_USERNAME}, ${MICROSOFT_PASSWORD} OFFICE365 : ${OFFICE365_USERNAME}, ${OFFICE365_PASSWORD} 4. Check the path to your MS Excel, MS Onenote, MS Word before running Key_Logs and App_Usage_Capture as the version under test varies from machine to machine, so does path to these applications. Path to application is defined in Resources > config_variables.robot 18
  • 19. Running automation test 1. To run the test, navigate to the folder where the tool is stored and go to ‘Tests’ folder 2. Choose any test suite you wish to run a test, and double –click on the batch file. For instance, if you run Key_Logs, double-click on automate_Key_Logs.bat (Extension for Batch File) 3. Once clicked, the file will run all test cases in the test suite. Once completed, generated report file and XML output file will appear in the same folder. 19
  • 20. 4. [OPTIONAL] If you want to run any failed test case without rerunning the entire test cases, you can run any file ending with ‘rerun’ (e.g. automate_browser_search_terms_rerun.bat). This file runs only failed tests and merges the result with the original one. Nevertheless, currently only some test suites have this rerun file available. Flexispy Payment and Refund Process Automation Introduction The following features are covered in this automation test. • Purchase a product on Flexispy Purchase a product on Flexispy Purpose: To verify if a purchase order on a Flexispy product sends a welcome Email to the target email Scope: The following parameters are verified in this test case • Thank you page • Welcome Email or Product Purchase Confirmation Email Supported Email Services: 20
  • 21. • Gmail Procedures: 1. The automation tool enter https:www.flexispy.com 2. Click ‘Buy Now’ 3. Choose a Flexispy Product 4. Fill in Email and billing information 5. Fill in credit Card information 6. Verify if Thank you page appears after completing the purchase 7. Open an Email and check if an activation code email from Flexispy exists Additionally, this test suite sends a refund request email along with reference ID given in the content of welcome email as detailed in the following steps. 1. Open the latest Flexispy Email and locate the reference ID 2. Capture the reference ID and compose an email for refund process along with that ID 3. Delete that email after sending it Test Instructions 1. Run Flexispy_Purchase_Order.bat located in the outermost folder of “Automation Test” 2. While running the test, do not interrupt the tool by pressing any key or move the mouse 3. Once completed, the tool immediately opens the report and stores the result in “R:_TestTeamAutomated TestReports” as a folder named “report_Flexispy_Purchase_Order_DD-MM-YYYY_HHMM”. 21
  • 22. In my internship of three month the technology I have worked on are:  Robot Framework: In my View, Robot Framework is a framework for designing automation test suites but in a proper definition, Robot Framework is a generic test automation framework for acceptance testing and acceptance test-driven development. It has easy-to-use tabular test data syntax and it utilizes the keyword-driven testing approach. Its testing capabilities can be extended by test libraries implemented either with Python or Java, and users can create new higher-level keywords from existing ones using the same syntax that is used for creating test cases. Robot framework uses teat libraries add functionality in automating test suites. Test libraries provide the actual testing capabilities to Robot Framework by providing keywords. There are several standard libraries that are bundled in with the framework, and galore of separately developed external libraries that can be installed based on your needs. 22
  • 23.  Sikulix: In my opinion SikuliX is a automation tool depend on image recognition. SikuliX automates anything you see on the screen of your desktop computer running Windows, Mac or some Linux/Unix. It uses 23
  • 24. image recognition powered by OpenCV to identify and control GUI components. This is handy in cases when there is no easy access to a GUI's internals or the source code of the application or web page you want to act on. SikuliX comes with basic text recognition (OCR) and can be used to search text in images. SikuliX is most commonly used to perform repetitive tasks such as:  Process of automating administration of IT systems and networks.  Going through the same website or portal every single day.  Automating the game testing.  Constantlty usage of applications.  Python: During my automation testing I mostly used python in sikulix for designing automation test suites. Python is a clear and powerful object-oriented programming language, comparable to Perl, Ruby, Scheme, or Java. Python's simple, easy to learn syntax emphasizes readability and therefore reduces 24
  • 25. the cost of program maintenance. Python supports modules and packages, which encourages program modularity and code reuse. The Python interpreter and the extensive standard library are available in source or binary form without charge for all major platforms, and can be freely distributed. Some amazing programming-language features of Python are:  A variety of basic data types are available: numbers (floating point, complex, and unlimited- length long integers), strings (both ASCII and Unicode), lists, and dictionaries.  Python supports object-oriented programming with classes and multiple inheritance.  Code can be grouped into modules and packages.  The language supports raising and catching exceptions, resulting in cleaner error handling.  JavaFx: JavaFX is a set of graphics and media packages that enables developers to design, create, test, debug, and deploy rich client applications that operate consistently across diverse platforms. The look and feel of JavaFX applications can be customized. Cascading Style Sheets separate appearance and style from implementation so that developers can concentrate on coding. Graphic designers can easily customize the appearance and style of the application through the CSS. If 25
  • 26. you have a web design background, or if you would like to separate the user interface and the back-end logic. Key features of JavaFx are:  Java APIs.  FXML and Scene Builder.  Web View  Swing interoperability  Built-in UI controls and CSS.  Modena theme  Batch: In designing test suites I used batch script to create a batch file so that I am able to run all the test suites at once. In a computer, a batch job is a program that is assigned to the computer to run without further user interaction. Examples of batch jobs in a PC are a printing request or an analysis of a Web site log. In larger commercial computers or servers, batch jobs are usually initiated by a system user. Some are defined to run automatically at a certain time, a batch file has the file name extension ".BAT". 26
  • 27. As I explained in my all my report that I am working with the automation tool. I believe the subjects that helped me were -- Special Project, Programming I, Programming II and Web Development I. These are the subjects that I have learned at Stamford are helping me in my Internship. Special Project is subject that helped me a lot in working on huge projects and getting used to the idea of large no. of files in a project and working a professional way. Plus, doing your specific task on time. Punctuality is something that I have learned from this subject. The whole idea of this subject was to give students an idea how the real life IT environment project is going to be. In addition, Programming I and II are the subjects where I discovered and grabbed my all programming skills. From basic level of java programming in Programming I to the Advanced level of programming where all the basic was covered. As we all know that whatever programming language. In my view, this internship will definitely change my career path in a very positive ways and will open enormous number of opportunities for me in future. So far in this internship, I have learnt lot of things and I am still learning. As I have never work before in any IT company, this has been a great experience for me to get to know the real IT working environment as well as about the teamwork and doing job on deadline. At the internship, I will have three months experience as a website developer with some new extra skill I have leant here. This will help me look better in my resume. At the end, I would say of course it will reflect my original perception of this career considering all the points I have mentioned in this report. Considering the fact I will be able to gain experience that will definitely help me with my future career. As far as I am concerned, during this internship, I have worked on several Robot Framework project and built many reports that is coded using Library Keywords which I never learnt or worked on before. It was quite a challenge for me because I was facing problems in understanding the code. So I have been studying and researching about these libraries while working on project as well. However, I have worked on coding projects before, but working on Robot framework is another thing because of different syntax and approaches. In addition, every task is really time consuming for me as I have never worked before on Test Suites projects. So I am also working on my speed of understanding thing quickly. Apart 27
  • 28. from these problems, we were involved in these projects in middle of its development. It’s really difficult for me to cop up with the speed of project. In the process I have to analyze the whole project consisting of lots of files coded by some other guy. Which was quite difficult for me to find the exact coding and understand it and how does it works, because I didn’t code it. But somehow I did able to catch up with the current developments and finished most of my task related to the automation suites. My main motto that I followed all these time in my internship was to keep working hard and never give up. The most important I believe that I have achieved from this internship is that I got to work in an Auotmation field which I have never done before. On the whole, it was a great experience and will definitely help me in my future career. Reference: http://docs.oracle.com/javafx/2/layout/jfxpub-layout.htm http://docs.oracle.com/javase/8/javase-clienttechnologies.htm file:///C:/RobotFramework/Extensions/AutoItLibrary/AutoItLibrary.html https://www.autoitscript.com/autoit3/docs/functions/ https://www.digitalendpoint.com https://www.flexispy.com/ http://robotframework.org/robotframework/ http://doc.sikuli.org/ 28