Automated GUI Test creation before application availability

Automated GUI Test creation before application availability

-

Documents
12 pages
Lire
Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres

Description

Achim Brede 12.03.2008
Automated GUI Test creation
before application availability
GUIdancer Tutorial
Hans. Brede/Achim Lörke
© 2003 Bredex GmbH Version 2.4
GUIdancer Tutorial 12.03.2008 2
Agenda
Background / automated testing
Introduction to GUIdancer
Explanation of concepts
Example test
Test automation with GUIdancer
Testing the Eclipse framework
Summary and questions
GUIdancer Tutorial 1 Achim Brede 12.03.2008
GUIdancer Tutorial 12.03.2008 3
Background – The road to test automation
Manual tests
Can’t deal with continuous testing
What should automatic tests achieve?
Consistent quality monitoring (nightly/weekly regressions)
More tests for less effort compared with manual tests
GUIdancer Tutorial 12.03.2008 4
Automated testing – the ideal
GUIdancer Tutorial 2 Achim Brede 12.03.2008
GUIdancer Tutorial 12.03.2008 5
Background – Problems with test automation
Test automation effort
Too much time needed to automate tests
Test automation time
Test automation starts on delivery of application
Maintenance effort
Test automation scripts have to be maintained
GUIdancer Tutorial 12.03.2008 6
GUIdancer – features
Independence from application under test (AUT)
Early start with automation
Integration tests in synch with development
Coderee automation
Reduces effort for test automation and maintenance
GUIdancer Tutorial 3 Achim Brede 12.03.2008
GUIdancer Tutorial 12.03.2008 7
Test process overview
GUIdancer Tutorial 12.03.2008 8
GUIdancer – features ...

Sujets

Informations

Publié par
Nombre de visites sur la page 114
Langue English
Signaler un problème
Achim Brede
Automated GUI Test creation before application availability
GUIdancerTutorial HansJ. Brede/Achim Lörke
Agenda
GUIdancer Tutorial
© 2003 Bredex GmbH
Background / automated testing Introduction to GUIdancer Explanation of concepts Example test Test automation with GUIdancer Testing the Eclipse framework Summary and questions
Version 2.4
GUIdancer Tutorial12.03.2008
2
12.03.2008
1
Achim Brede
08 Background – The road to test automation
Manual tests Can’t deal with continuous testing What should automatic tests achieve? Consistent quality monitoring (nightly/weekly regressions) More tests for less effort compared with manual tests
Automated testing – the ideal
GUIdancer Tutorial
GUIdancer Tutorial12.03.2008
3
4
12.03.2008
2
Achim Brede
ial12.03.2008 Background – Problems with test automation
Test automation effort Too much time needed to automate tests Test automation time Test automation starts on delivery of application Maintenance effort Test automation scripts have to be maintained
GUIdancer– features
GUIdancer Tutorial
GUIdancer Tutorial12.03.2008
Independence from application under test (AUT) Early start with automation Integration tests in synch with development Codefree automation Reduces effort for test automation and maintenance
5
6
12.03.2008
3
Achim Brede
Test process overview
GUIdancer– features
GUIdancer Tutorial
GUIdancer Tutorial12.03.2008
GUIdancer Tutorial12.03.2008
Eclipsebased Platformindependent Executable specifications No middleman between test design and automation Multilingual testing Robust object recognition Extensible
7
8
12.03.2008
4
GUIdancer Tutorial12.03.2008
GUIdancer Tutorial
Achim Brede
9
12.03.2008
GUIdancer Tutorial12.03.2008 10
Test Cases Keywords Test Steps Component, Action, Parameter Only action intrinsic to test flow
5
GUIdancer– concepts
Keyworddriven testing Modular tests What things can be reused? More reuse = exponential growth, ease of maintenance Abstraction Separation of data, implementation details … More flexibility = more reusability, ease of maintenance
GUIdancer– concepts
Achim Brede
Before we start – Conventions
Test Case Unbound (ub_component_action) aut_bound (meaningful description) UI Components Window title Component name Abbreviation for component type Main_PackageExplorer_tre
GUIdancer Tutorial12.03.2008 11
12.03.2008 12 Example of concepts – MultiToolkit Test
GUIdancer Tutorial
Calculator application Requirements: Enter two values, get result Run with Swing, SWT and Web implementations Use the same test for all three implementations
12.03.2008
6
Achim Brede
12.03.2008 Example of concepts – MultiToolkit Test
MultiToolkit Example: Use Case
Component
First input text field
Second input text field
Equals button
Result field
Action
Enter text
Enter text
Click
Check result
Parameter: First run
1
1
Once
0
Parameter: Second run
1
1
Once
2
Parameter: Third run
1
1
Once
2
12.03.2008 Example of concepts – MultiToolkit Test
GUIdancer Tutorial
Demo Version 2.0 Empty Framework
Version 2.1 Result Same test runs on different implementations (swing, swt, web)
13
14
12.03.2008
7
Achim Brede
Testing the Eclipse Framework
Interactive demo – four use cases Empty framework project EcpliseConTutorial 2.0 1 Create a new Java project – V 2.1 2 Delete a Java project  V 2.2 3 Create Class “HelloWorld  V 2.3 4 Run Java project  V 2.4
Goals of this lesson
GUIdancer Tutorial
What keywords do we need? How to create a keyword How to reuse already existing keywords Test structure Components and parameters Object mapping Execution
GUIdancer Tutorial12.03.2008
GUIdancer Tutorial12.03.2008
15
16
12.03.2008
8
Component Package explorer tree context menu
Window Main Eclipse Window
Delete in Progresss
Action Select node Delete
Also delete contents Once 10 seconds timeout
GUIdancer Tutorial12.03.2008
Parameter ExampleProject
Select Click Wait to close
Main Eclipse Window
Check node exists
Package explorer tree
ExampleProject  FALSE
18
9
GUIdancer Tutorial12.03.2008
17
12.03.2008
Parameter File>New>Java Project 10 seconds timeout true true false false false true ExampleProject false true false true true true Once 10 seconds timeout ExampleProject/src  true ExampleProject/JRE System Library  true
GUIdancer Tutorial
Eclipse Framework Test: Use Case 2  delete a java project
Radio button OK button
Testing the Eclipse Framework
Eclipse Framework Test: Use Case 1  create a java project
Achim Brede
Action Select from menu Wait to appear Check empty Check enablement Check enablement Check enablement Check enablement Check enablement Enter name Check empty Check enablement Check enablement Check enablement Check activation Check enablement Click Wait to close Check node exists Check node exists
Component Menu bar New Java Project Dialog Project name field Help button Back button Next button Finish button Cancel button Project name field Project name field Help button Back button Next button Finish button Cancel button Finish button New Java Project Dialog Package explorer tree Package explorer tree
Window Main Eclipse Window New Java Project Dialog
Main Eclipse Window
Testing the Eclipse Framework
Delete Dialog
Main Eclipse Window
Window Main Eclipse Window New Java Class Dialog
Testing the Eclipse Framework
Main Eclipse Window
Achim Brede
GUIdancer Tutorial
Eclipse Framework Test: Use Case 3  create HelloWorld class
20
Component
Window Main Eclipse Window
Action type shortcut wait check Text
console view
10
Parameter alt shift x, j 5 seconds Hello World
Eclipse Framework Test: Use Case 4  run java project via Keyboardshortcut
Testing the Eclipse Framework
System.out.println("Hello World"); CTRLS
Parameter once into New Class Button 10 seconds timeout true true false true HelloWorld on true true true Once 10 seconds timeout ExampleProject/src/(default package)/HelloWorld.java  true HelloWorld.java Once type CTRLF 10 seconds timeout
19
TODO Once true Once 10 seconds timeout
Component Toolbar New Java Class Dialog Class name field Help button Finish button Cancel button Class name field Main stub Help button Finish button Cancel button Finish button New Java Class Dialog Package explorer tree Editor View Editor View Editor View Find/Replace Dialog Find Text Find Text Find button Find status label Close button Find/Replace Dialog Editor View Editor View Editor View
GUIdancer Tutorial12.03.2008
12.03.2008
GUIdancer Tutorial12.03.2008
Action click Wait to appear Check empty Check enablement Check enablement Check enablement Enter name select Check enablement Check enablement Check enablement Click wait to close Check node exists Check selection click Open Find window Wait to appear Delete old contents Enter Text Click Check empty Click Wait to close goto next line Enrer code Save Editor
Find/Replace Dialog
Achim Brede
Summary
Concepts of GUIdancer Keyword driven Reuse of keywords Abstract specifications Parallel to development No programming Benefits More robust test process Immediate error discovery = lower cost of automated GUI testing
GUIdancer Tutorial12.03.2008 21
12.03.2008 22 Special promotion on GUIdancer licenses
GUIdancer Tutorial
Eclipse Committers Each committer will get one free 2.x license Attendees of this tutorial Each attendee of this tutorial will get a 50% discount (valid until April 30, 2008) Conference attendees Each attendee of the EclipseCon 2008 will get a 20% discount (valid until April 30, 2008)
Promotions cannot be combined
12.03.2008
11