Vision of Smarter Software Testing Faster, more thorough and cheaper

Atomyste: Atom splitting in Embedded System Testing
Progress Symposium May 2006
Home Page
Title Page
JJ
II
J
I
Vision of Smarter Software Testing
Faster, more thorough and cheaper
Page 1 of 16
Axel Belinfante
Machiel van der Bijl
Go Back
[email protected]
Full Screen
Close
Quit
[email protected]
1
Atomyste: Atom splitting in Embedded System Testing
Progress Symposium May 2006
Home Page
Title Page
JJ
II
J
I
Page 2 of 16
Go Back
Overview
• Some academic chit chat?
• Manual testing is not enough.
• Automated testing, Twente style.
• Atomyste results.
Full Screen
Close
Quit
[email protected]
2
Atomyste: Atom splitting in Embedded System Testing
Progress Symposium May 2006
Home Page
Title Page
JJ
II
J
I
Some academic chit chat?
Page 3 of 16
• The universe consists of about 1080 atoms.
• Your average software system consists of at least 10100 states.
Go Back
Full Screen
Close
Quit
[email protected]
3
Atomyste: Atom splitting in Embedded System Testing
Progress Symposium May 2006
The old days
Home Page
Title Page
JJ
II
J
I
Page 4 of 16
Go Back
Full Screen
Close
Quit
[email protected]
4
Atomyste: Atom splitting in Embedded System Testing
Progress Symposium May 2006
The new days
Home Page
Title Page
JJ
II
J
I
Page 5 of 16
Go Back
Full Screen
Close
Quit
[email protected]
5
Atomyste: Atom splitting in Embedded System Testing
Progress Symposium May 2006
Home Page
What’s different?
Title Page
Modern days
Old days
JJ
Now
10
II
10
J
10
10
10
I
Page 6 of 16
10
10
10
10
Go Back
10
10
10
Full Screen
10
Close
Quit
[email protected]
6
Atomyste: Atom splitting in Embedded System Testing
Home Page
Progress Symposium May 2006
Testing is like playing battleship
Title Page
JJ
II
J
I
Page 7 of 16
Go Back
Full Screen
Close
But the board’s a little bigger: 1050 ∗ 1050
Quit
[email protected]
7
Atomyste: Atom splitting in Embedded System Testing
Progress Symposium May 2006
Home Page
Title Page
JJ
II
J
I
Page 8 of 16
Go Back
Manual testing is not enough
Systems are too big to only test by hand
• Humans are slow;
• Humans are not accurate enough;
• Humans are expensive.
Full Screen
Close
Quit
[email protected]
8
Atomyste: Atom splitting in Embedded System Testing
Progress Symposium May 2006
Home Page
Title Page
Testing Research at Twente University
JJ
II
J
I
Page 9 of 16
Go Back
• Test theory: ioco;
• Test tooling: TorX.
We can automatically:
• Generate tests;
• Execute tests; and
• Evaluate the outcome of the test.
Full Screen
Close
Quit
[email protected]
9
Atomyste: Atom splitting in Embedded System Testing
Progress Symposium May 2006
Home Page
Title Page
JJ
II
J
I
Page 10 of 16
Automated testing with TorX
UML
Promela
Model
http
corba
TorX
Adapter
Go Back
Full Screen
Close
Quit
[email protected]
10
IUT
Atomyste: Atom splitting in Embedded System Testing
Progress Symposium May 2006
Home Page
Atomyste
Title Page
JJ
II
J
I
arcade game
enter money
enter ¤3
Model
TorX
Adapter
Page 11 of 16
Go Back
Full Screen
Action
Refinement
* Clean Adapter
* Clean Model
* Automatic
Close
Quit
[email protected]
11
?? ¤3 ??
IUT
Atomyste: Atom splitting in Embedded System Testing
Progress Symposium May 2006
Atomyste
Home Page
Title Page
abstract
system
specification
JJ
abstract
test
derivation
abstract
test suite
II
J
I
Page 12 of 16
Go Back
system
refinement
refined
system
specification
system
implementation
(IUT)
concrete world
test
application
executable
tests
verdict
Quit
[email protected]
refined
testsuite
test
implementation
formal world
system
implementation
Full Screen
Close
refined
test
derivation
test
refinement
12
Atomyste: Atom splitting in Embedded System Testing
Progress Symposium May 2006
Atomyste
Home Page
Title Page
abstract
system
specification
JJ
abstract
test
derivation
abstract
test suite
II
J
I
Page 13 of 16
Go Back
system
refinement
refined
system
specification
system
implementation
(IUT)
concrete world
test
application
executable
tests
verdict
Quit
[email protected]
refined
testsuite
test
implementation
formal world
system
implementation
Full Screen
Close
refined
test
derivation
test
refinement
13
Atomyste: Atom splitting in Embedded System Testing
Progress Symposium May 2006
Atomyste
Home Page
Title Page
JJ
abstract
system
specification
abstract
test
derivation
abstract
test suite
II
J
I
Page 14 of 16
Go Back
system
refinement
refined
system
specification
system
implementation
(IUT)
test
application
verdict
Quit
[email protected]
refined
testsuite
test
implementation
formal world
system
implementation
Full Screen
Close
refined
test
derivation
test
refinement
14
concrete world
executable
tests
Atomyste: Atom splitting in Embedded System Testing
Progress Symposium May 2006
Home Page
Title Page
JJ
II
J
I
Page 15 of 16
Go Back
Corion: Progress/UT spin off
Model Based System Development
• Model Driven System Development;
• Model Checking;
• Model Based Testing.
Full Screen
Close
Quit
[email protected]
15
Atomyste: Atom splitting in Embedded System Testing
Progress Symposium May 2006
Home Page
Title Page
JJ
II
J
I
Page 16 of 16
Go Back
Conclusion
• Modern day systems are too big to test by hand;
• Model Based Testing enables completely automated testing;
• Atomyste enables automated model and test case refinement;
• Corion offers Model Based Testing.
Full Screen
Close
Quit
[email protected]
16