may 08-29 globalvetlink testing automation dan stewart - ee joshua carson - cpre jordan hager - cpre...

45
May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran Client Company – GlobalVetLink Client Name – Bob Shuka

Upload: marjorie-reeves

Post on 27-Dec-2015

220 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

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

Page 2: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

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

Page 3: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

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

Page 4: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

Proposed Solution (Concepts)

• Major concepts of a software automated testing system

1. Testing Scripts

2. Automation Software

Page 5: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

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

Page 6: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

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

Page 7: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

Conceptual System Diagram

Page 8: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

System Description

• We will be designing our solution to have three parts

1. Storing Function

2. Input Function

3. Run Function

Page 9: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

Automation Software

• We have a couple different options for automation software

1. Open Source

2. Licensed Versions

Page 10: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

Open Source

• Pros– Free– Editable

• Cons– Lack of Reliability– Lack of Support

Page 11: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

Licensed Automated Tools

• Pros– Support

– Reliability

• Cons– Expensive

– Can be more complex to use

– May not meet all requirements anyways

Page 13: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

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

Page 14: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

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

Page 15: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

Market Research

• Selenium

• JUnitDoclet

• JUnitFactory

• CoView

• Build Test Automation ourselves

• Others

Page 16: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

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

Page 17: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

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

Page 18: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

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

Page 19: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

User Interface ctd.

• Selenium with GlobalVetLink’s site

Page 20: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

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

Page 21: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

Resources• Eclipse Java Developer

Environment• Selenium Software• Apache Tomcat for server

operation• PostgreSQL for database

information• GlobalVetLink Computers

and Servers• Project Advisor

Page 22: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

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

Page 23: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

Project Schedule

Page 24: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

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

Page 25: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

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

Page 26: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

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

Page 27: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

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

Page 28: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

Hardware Specification

• It should be able to run on a desktop or laptop computer

Page 29: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

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

Page 30: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

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

Page 31: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

Test Specification

• Correct Operation Verification Testing

• Consistency Testing

• User Acceptance Testing

• Cross Platform Testing

• User Manual Testing

Page 32: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

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

Page 33: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

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

Page 34: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

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

Page 35: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

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

Page 36: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

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

Page 37: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

Software Design

User

Selenium IDE

GlobalVetLink site

Html file Html fileHtml file

Batch file

Selenium RC

Page 38: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

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

Page 39: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

Testing Results

• Verification Testing – Passed

• Consistency Testing – Passed

• Operating System Testing – Passed

• Cross Platform – Failure

• User Manual – Passed

Page 40: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

Issues

• Test failures due to slow GlobalVetLink test server speed

• Resolved by using a WaitForPageToLoad() command

• Status: Solved

Page 41: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

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

Page 42: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

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

Page 43: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

Lessons Learned

• Communication is vital to extended projects

• Group and client incorrectly minimized communication early on

• Project progressed much faster after improving communication

Page 44: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

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

Page 45: May 08-29 GlobalVetLink Testing Automation Dan Stewart - EE Joshua Carson - CPRE Jordan Hager - CPRE 1 st Advisor – Dr. Smith 2 nd Advisor – Dr. Manimaran

Demo & Questions