may 08-29 globalvetlink testing automation dan stewart - ee joshua carson - cpre jordan hager - cpre...
TRANSCRIPT
May 08-29GlobalVetLink Testing Automation
• Dan Stewart - EE• Joshua Carson - CPRE• Jordan Hager - CPRE• 1st Advisor – Dr. Smith• 2nd Advisor – Dr. Manimaran• Client Company – GlobalVetLink• Client Name – Bob Shuka
About GlobalVetLink
• Small company based in Ames, Iowa• National multi-species Web-Based Platform
connects state animal health/regulatory officials with veterinarian and animal diagnostic laboratories subscribers
• Services this website provides are: premises ID, digital photos, visual tags, & EID - with automated uploading of IDs
• Simply Stated: they hold veterinarian/animal lab records on the web and reduce paperwork
Problem Statement
• Small company = lack of manpower• Previously outsourced code is poorly written and
has been hard to update without causing bugs in other parts of the application
-----------------------------------------------------• Problem: Find a way to take the manpower
intensive operation of manual testing and automate it
-----------------------------------------------------• Intended Result: To allow the developers more
time to work on bugs/development and less time to spend on testing
Proposed Solution (Concepts)
• Major concepts of a software automated testing system
1. Testing Scripts
2. Automation Software
Testing Scripts
• Testing scripts is code that runs human-like actions extremely fast
• Scripts verify certain criteria while running• Test scripts will do the same thing that GlobalVetLink
does manually for testing
Automation Software
• Automation Software (AS) runs Testing Scripts
• AS report output of Testing Scripts
• Good AS helps in creating Testing Scripts via auto-generation of Script code
Conceptual System Diagram
System Description
• We will be designing our solution to have three parts
1. Storing Function
2. Input Function
3. Run Function
Automation Software
• We have a couple different options for automation software
1. Open Source
2. Licensed Versions
Open Source
• Pros– Free– Editable
• Cons– Lack of Reliability– Lack of Support
Licensed Automated Tools
• Pros– Support
– Reliability
• Cons– Expensive
– Can be more complex to use
– May not meet all requirements anyways
Operating Environment
• Automation Software must run on both Internet Explorer and Firefox
• Could be installed on Windows OS, Mac OS, or Linux OS
Functional Requirements
• Tests will finish thoroughly and allow for a report to be generated
• Must work with Windows OS as well as Mac OS
• Must work with both Internet Explorer and Firefox
Non-Functional Requirements
• Would like Automation Software to be Open Source.
• Client would like 5 automated software packages researched and documented before choosing one to make the test scripts with.
• Source code was coded in jsp
Market Research
• Selenium
• JUnitDoclet
• JUnitFactory
• CoView
• Build Test Automation ourselves
• Others
GlobalVetLinkRequirement
JUnitDoclet JUnitFactory CoView Selenium
Internet Explorer X X
Firefox X X
Java X X X X
JSP X
Windows X X X X
OSX X X X X
Open Source X X X
Customize X X
We Recommend Selenium
• Meets all of GlobalVetLink’s requirements
• Works on all required browsers and operating systems
• Works with Java and JSP
• Open Source so it is free
User Interface
• User interface will be the user interface of the Automation Software
• Example shows the ability to run, store and allows for user input
User Interface ctd.
• Selenium with GlobalVetLink’s site
Planned Deliverables
All deliverables will be turned over to Bob Shuka at GlobalVetLink
• A document on designing and testing using Selenium
• 3-5 testing scripts using the automation software for use on GlobalVetLink Software on CD.
• A presentation showing the test to prove the script works
Resources• Eclipse Java Developer
Environment• Selenium Software• Apache Tomcat for server
operation• PostgreSQL for database
information• GlobalVetLink Computers
and Servers• Project Advisor
Estimated Budget
• Poster: $50.00• Labor @ 10.50/hr:
$6,300.00• Total: $6,350.00
Note: GlobalVetLink will not be charged the cost of labor or poster
Project Schedule
Risks and Issues
• Selenium working incorrectly with aspects of GlobalVetLink website
• Test scripts being designed improperly or not covering all cases of need
• We hope combat these by creating a document that gives GlobalVetLink insight into how to properly test using Selenium and by providing a work around for incorrect interactions
Design Method
• Design was done using mainly the V-model
• After the planning, research, requirements...
• We chose Automation Software and designed tests to accurately accomplish the given requirements
• Then testing to verify meeting requirements
Input/Output Specification
The input are the steps within the test scripts• 3-5 Test cases written using selenium• Test cases test creation or modification of an
animal certificate • Test case inputs are the steps it takes to
manually create or modify an animal certificate
Input/Output Specification (ctd.)
The output will of:• Correct output on GlobalVetLink UI shown to a
user• Correct computation of data within code• Correct placement of database information
when appropriate• Output to user of pass or failure test cases
Hardware Specification
• It should be able to run on a desktop or laptop computer
Software Specification
• To create a test, the user should download the Selenium IDE plug-in for Firefox
• Once installed, simply turn it on and it will record your actions
• It records where user clicks and inputs the keyboard gives
• The IDE allows the user to adjust what was recorded, remove sections that they don't want, as well as insert other actions that might not have been recorded
Software Specification (ctd.)
• Test Suite HTML file - HTML file holds all the links to the tests within the same folder and is displayed by Selenium test runner
• Batch File Automation - Entire set-up of selenium to run at the click of the batch file
Test Specification
• Correct Operation Verification Testing
• Consistency Testing
• User Acceptance Testing
• Cross Platform Testing
• User Manual Testing
Correct Operation Verification Testing
• Tests will be done to ensure scripts repeat recorded behavior
• Done by manually doing tests again for comparison or reviewing the tests as they run
Consistency Testing
• Tests pass if all tests in the suite continue to repeatedly pass each time
• Fail if any of the tests fail at any time for any reason
Operating System Testing
• We will test on Windows Vista and XP as well as Mac OSX
• Tests pass if the testing suite passes on each system
Cross Platform Testing
• Tests will be done on both Firefox and IE
• Tests will pass if testing suite runs on both IE and Firefox with out stopping and without additional help
User Manual Testing
• Tests will be done to ensure a user can follow the instructions of the user’s manual
• Test passes if participant can successfully make testing suite without additional help
Software Design
User
Selenium IDE
GlobalVetLink site
Html file Html fileHtml file
Batch file
Selenium RC
Build Phase
Basic Certificate Creation, Modification and Deletion
While running, verifies such things as:
• Login
• New certificates can be made
• Certificate can be saved
• Certificate can be deleted
Testing Results
• Verification Testing – Passed
• Consistency Testing – Passed
• Operating System Testing – Passed
• Cross Platform – Failure
• User Manual – Passed
Issues
• Test failures due to slow GlobalVetLink test server speed
• Resolved by using a WaitForPageToLoad() command
• Status: Solved
Issues (ctd.)
• Tests failed as references to HTML would not be correctly applied in IE
• Use specific HTML id’s• Status: Solved but un-implemented
Earned Value Analysis
• Total Hours – 462 hours – 100% complete• Total Cost @ $10.50/hr w/poster = $ 4968• Cost Variance: 1382 : Positive : Under Budget• Schedule Variance: 1382 : Positive : Ahead of
Schedule• Cost Performance Index: 1 : =1 : On target budget• Schedule Performance Index: .782 : <1 : Behind
Schedule
Lessons Learned
• Communication is vital to extended projects
• Group and client incorrectly minimized communication early on
• Project progressed much faster after improving communication
Conclusion
• We believe this project is a success.
• All deliverables turned in April 11th, 2008
• IE problem only causes gap in Cross Platform Testing
• Solution available for IE fix
Demo & Questions