GUI Testing Chapter 19 GUI characteristic Figure 19.1 What is the - - PowerPoint PPT Presentation
GUI Testing Chapter 19 GUI characteristic Figure 19.1 What is the - - PowerPoint PPT Presentation
GUI Testing Chapter 19 GUI characteristic Figure 19.1 What is the main characteristic of GUIs? GUI2 GUI characteristic 2 What is the main characteristic of GUIs? Event driven GUI3 Levels of testing What are the
GUI–2
GUI characteristic
What is the main characteristic of GUIs?
Figure 19.1
GUI–3
GUI characteristic – 2
What is the main characteristic of GUIs?
Event driven
GUI–4
Levels of testing
What are the levels of testing?
GUI–5
Levels of testing
For GUIs what are the levels of testing?
Unit testing Integration testing System level testing
GUI–6
Unit testing – what
For GUIs what are the levels of testing?
Unit testing
What do we test?
GUI–7
Unit testing – what – 2
For GUIs what are the levels of testing?
Unit testing – what do we test?
Button level Text box level
GUI–8
Unit testing – how
How do we do unit testing?
GUI–9
Unit testing – how – 2
How do we do unit testing?
Try clicking buttons and using text boxes Visually compare with expected results
GUI–10
Unit testing – difficulties
What are the difficulties of unit testing?
GUI–11
Unit testing – difficulties – 2
What are the difficulties of unit testing?
Distinguishing
Output errors Computation errors
What else?
GUI–12
Unit testing – difficulties – 3
What are the difficulties of unit testing?
Distinguishing
Output errors Computation errors
Not easily repeatable Seat of the pants testing User input and observation errors
GUI–13
Unit testing – overcome difficulties
How do we overcome the difficulties?
GUI–14
Unit testing – overcome difficulties – 2
How do we overcome the difficulties?
Automate with special drivers
GUI–15
Unit testing – other considerations
Other considerations?
GUI–16
Unit testing – other considerations – 2
Other considerations?
Mode of implementation What does this mean?
GUI–17
Unit testing – other considerations – 3
Other considerations?
Mode of implementation
Using GUI tools – Visual Basic
E.g. do not need to test input/output at text box
level
Text is stored correctly
Writing custom Java classes
E.g. need to test input/output at text box level Is text stored correctly?
GUI–18
Integration testing – what
What are the levels of testing?
Unit testing Integration testing
What do we do?
GUI–19
Integration testing – what – 2
What are the levels of testing?
Unit testing Integration testing
Little to do for GUIs
GUI–20
System testing – what
What are the levels of testing?
Unit testing Integration testing System testing
What do we do?
GUI–21
System testing – what – 2
What are the levels of testing?
Unit testing Integration testing System testing
Exercise event paths
GUI–22
Event paths
How do we find event paths?
GUI–23
Event paths – 2
How do we find event paths?
Build EDPNs
GUI–24
EDPN build
How do we build EDPNs?
GUI–25
EDPN build – 2
How do we build EDPNs?
First build for atomic system functions
Figure 19.2
GUI–26
EDPN build – 3
How do we build EDPNs?
First build for atomic system functions Then?
GUI–27
EDPN build – 4
How do we build EDPNs?
First build for atomic system functions Combine into one
Figure 19.3
GUI–28
EDPN use
How do we use EDPNs?
GUI–29
EDPN use – 2
How do we use EDPNs?
Look for coverage
GUI–30
EDPN use – 3
How do we use EDPNs?
Look for coverage
What types of coverage do we look for?
GUI–31
EDPN use – 4
How do we use EDPNs?
Look for coverage
Every atomic system function Every input port Every output port Explore common threads Explore abnormal user behaviour threads
GUI–32
Atomic system function
What are the problems with ASFs?
GUI–33
Atomic system function – 2
What are the problems with ASFs?
Some do not have visible system-level output
E.g. store US dollar amount
GUI–34
Atomic system function – 3
What are the problems with ASFs?
Some do not have visible system-level output
E.g. store US dollar amount
What else?
GUI–35
Atomic system function – 4
What are the problems with ASFs?
Determining what is an atomic system function
Copy needs to have select first
Is select an atomic function? Is copy an atomic function? Complicating / simplifying factor?
GUI–36
Atomic system function – 5
What are the problems?
Determining what is an atomic system function
Copy needs to have select first
Is select an atomic function? Is copy an atomic function? Complicating/simplifying factor?
Grey out invalid buttons
E.g. un-grey-out is an output of select Un-greyed-out is a precondition of copy
Forced navigation simplifies GUI use and testing
GUI–37
Common threads
Explore common threads
What are the problems?
GUI–38
Common threads – 2
Explore common threads
What are the problems?
Determining what is common
GUI–39
Common threads – 3
Explore common threads
What are the problems?
Determining what is common
How can it be done?
GUI–40
Common threads – 4
Explore common threads
What are the problems?
Determining what is common
How can it be done?
Gather usage patterns
GUI–41
Abnormal behaviour
Explore abnormal user behaviour threads
What are the problems?
GUI–42
Abnormal behaviour – 2
Explore abnormal user behaviour
Threads could be infinitely long and/or silly
E.g. toggle between countries and then quit
What else?
GUI–43
Abnormal behaviour – 3
Explore abnormal user behaviour
Threads could be infinitely long and/or silly
E.g. toggle between countries and then quit Interaction with other processes