RSDC Presentation Template

Functional Testing with Eclipse
Eric Long
Technology Evangelist, IBM Rational Technology Events
elong@us.ibm.com
Functional Testing with Eclipse TPTP | Copyright © IBM Corp., 2007-2008. All rights reserved. Source code in this presentation is made available
under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
What we WON’T be covering today…
• Unit Testing
 API Recorder
 JUnit Testing
• Performance Testing
 HTTP Recorder
Functional Testing with Eclipse TPTP | Copyright © IBM Corp., 2007-2008. All rights reserved. Source code in this presentation is made available
under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
2
What we WILL cover…
•
•
•
•
•
•
Introduction
Manual Testing
Demo
Functional Testing
Demo
Next Steps
Functional Testing with Eclipse TPTP | Copyright © IBM Corp., 2007-2008. All rights reserved. Source code in this presentation is made available
under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
3
A Touch of Humor
• Trunk Monkey
Functional Testing with Eclipse TPTP | Copyright © IBM Corp., 2007-2008. All rights reserved. Source code in this presentation is made available
under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
4
What is Manual Functional Testing?
The manual process of ensuring fitness for use
• Using human labor to validate the business
use cases and fitness for use of an
application, system or device
• Includes labor to plan, design, execute and
evaluate the status of the application or
device under test
• Experience indicates over 75% of the testing
done today is performed manually
Functional Testing with Eclipse TPTP | Copyright © IBM Corp., 2007-2008. All rights reserved. Source code in this presentation is made available
under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
5
Challenges of Manual Functional Testing
Three things that complicate the life of a manual tester
• Labor Intensive
 Too much time is spent
maintaining manual test
documentation for application
changes
• Resistant to Change
 Each project has diverse
processes, tester skill sets and
types of applications and devices
under test
• Unreliable
 Accidental human-error with data
entry and validation often skews
test results
Functional Testing with Eclipse TPTP | Copyright © IBM Corp., 2007-2008. All rights reserved. Source code in this presentation is made available
under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
6
Eclipse Manual Testing Tools…
• Overview
 Description of manual
test
• Test Cases
 Defines individual test
cases
• Behavior
 Order of test cases
 Loops
Functional Testing with Eclipse TPTP | Copyright © IBM Corp., 2007-2008. All rights reserved. Source code in this presentation is made available
under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
7
Eclipse Testing Tools
• While a test is being
run, a step-by-step
progress view is
available
 JUnit-like status bar
 Input values



Verdict
Reason
Text
 Attachments
Functional Testing with Eclipse TPTP | Copyright © IBM Corp., 2007-2008. All rights reserved. Source code in this presentation is made available
under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
8
Demo
• Manual testing with Eclipse TPTP
• Test creation, reuse and execution
Functional Testing with Eclipse TPTP | Copyright © IBM Corp., 2007-2008. All rights reserved. Source code in this presentation is made available
under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
9
What is Automated Functional Testing?
The automated process of ensuring fitness for use
• Using automation tools to
capture actions taken against an
application in script format.
Record
• Three Step Process
 Record actions into a script format
 Optionally enhance scripts with
custom coding
Enhance
Execute
 Execute scripts – ideally overnight to
increase test productivity to 24/7
Functional Testing with Eclipse TPTP | Copyright © IBM Corp., 2007-2008. All rights reserved. Source code in this presentation is made available
under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
10
Challenge of Manual Functional Testing with Short
Test Cycles
Tests
Rerun the ...the new
first tests tests...
and...
Manual testing
can’t keep pace!
...take
more
time
Time
Build 1
Build 2
Build 3, 4, 5 …
• Manual testing alone can’t keep pace with the
rapid development of applications…
 Quality will be sacrificed to keep on schedule
Functional Testing with Eclipse TPTP | Copyright © IBM Corp., 2007-2008. All rights reserved. Source code in this presentation is made available
under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
Challenges of Automated Functional Testing
Three things that complicate the life of an automated functional tester
• Control cost of test automation
 Inexperienced testers face steep
learning curve for tools
 Test maintenance grows with
project
• Testing Tools Lack Flexibility
 Power users hands are tied by tool
limitations
• Test Team Integration
 Managing script changes with
parallel development
 Sharing test assets with the
larger software team
Functional Testing with Eclipse TPTP | Copyright © IBM Corp., 2007-2008. All rights reserved. Source code in this presentation is made available
under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
12
Automated GUI Test Editor
•
•
•
•
Overview
Test Cases
Behavior
Test Controls





Record a new test
Play a test case
Delete
Update
Refresh
Functional Testing with Eclipse TPTP | Copyright © IBM Corp., 2007-2008. All rights reserved. Source code in this presentation is made available
under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
13
Recording Control Center
• Customize wait time
• Toggle position-based
recording
• Restart
• Terminate
• Insert verification hooks
Functional Testing with Eclipse TPTP | Copyright © IBM Corp., 2007-2008. All rights reserved. Source code in this presentation is made available
under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
14
Test Case Generation
• After recording a test, here are the results:
 Tree structure view containing Shells and Commands
 Macro view for fine-grained changes
Functional Testing with Eclipse TPTP | Copyright © IBM Corp., 2007-2008. All rights reserved. Source code in this presentation is made available
under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
15
Test Log
•
•
•
•
Events
Properties
Pass/Fail charts
Bug submission
Functional Testing with Eclipse TPTP | Copyright © IBM Corp., 2007-2008. All rights reserved. Source code in this presentation is made available
under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
16
Demo
Functional testing with Eclipse TPTP preview
Functional Testing with Eclipse TPTP | Copyright © IBM Corp., 2007-2008. All rights reserved. Source code in this presentation is made available
under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
17
Thank You
• Hope you enjoyed the short presentation
• Please remember to fill out your evaluations
Functional Testing with Eclipse TPTP | Copyright © IBM Corp., 2007-2008. All rights reserved. Source code in this presentation is made available
under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
18
Legal Notices
• Copyright © IBM Corp., 2007-2008. All rights reserved. Source code in this presentation is made available
under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5
license.
• IBM and the IBM logo are trademarks or registered trademarks of IBM Corporation, in the United States, other
countries or both.
• Java and all Java-based marks, among others, are trademarks or registered trademarks of Sun Microsystems
in the United States, other countries or both.
• Eclipse and the Eclipse logo are trademarks of Eclipse Foundation, Inc.
• THE INFORMATION DISCUSSED IN THIS PRESENTATION IS PROVIDED FOR
INFORMATIONAL PURPOSES ONLY. WHILE EFFORTS WERE MADE TO VERIFY THE
COMPLETENESS AND ACCURACY OF THE INFORMATION, IT IS PROVIDED "AS IS"
WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, AND IBM SHALL NOT BE
RESPONSIBLE FOR ANY DAMAGES ARISING OUT OF THE USE OF, OR OTHERWISE
RELATED TO, SUCH INFORMATION. ANY INFORMATION CONCERNING IBM'S
PRODUCT PLANS OR STRATEGY IS SUBJECT TO CHANGE BY IBM WITHOUT NOTICE.
Functional Testing with Eclipse TPTP | Copyright © IBM Corp., 2007-2008. All rights reserved. Source code in this presentation is made available
under the EPL, v1.0, remainder of the presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.
19