TestWorks Conf Real world automation survival - Alan Richardson
TestWorks Conf The magic of models for 1000% test automation - Machiel van der Bijl
-
Upload
xebia-nederland-bv -
Category
Technology
-
view
453 -
download
0
Transcript of TestWorks Conf The magic of models for 1000% test automation - Machiel van der Bijl
Axini Modeling and Model Based Testing
ITAB SCRP protocol
Goal:
• Give a hands on impression of MBT with the Axini MBT tool-set
• For non-technical aspects, let’s discuss that after the presentation J
2
• Axini
• Machiel
3
4
What do you want to hear?
Contents
• Modeling and Model-Based Testing
• SCRP case– Intro
– Modeling and testing
5
6
MBT ingredients
Model AxiniTestManager SUT
test generationand execution
test-evaluation
Adapter
simulation
Test process
1. (Create specification)
2. Interpret specification
3. Create test
4. Predict outcome5. Execute test6. Check outcome
Kinds of test automation
UFT/CucumberAxini MBT
1. (Create specification)
2. Interpret specification
3. Create test
4. Predict outcome5. Execute test6. Check outcome
hand UFT MBT or
Create specification N N NInterpret specification N N N NCreate model - - N
Create test N N PPredict outcome N N Pscript test - N P
Execute test N P PCheck outcome N P P
Manual vs automatic
hand UFT MBT or
Create specification N N NInterpret specification N N N NCreate model - - N
Create test N N PPredict outcome N N Pscript test - N P
Execute test N P PCheck outcome N P P
Maintenance trap
Example
11
?button
!lamp on
?button
!lamp off
?button
!lamp on
?button
!lamp off
?button
!lamp on
?button
!lamp off
?button
!lamp on
?button
!lamp off
?button
!lamp on
?button
!lamp off
Why do our clients MBT?
• Faster in production
• Higher quality
• Lower total cost of ownership
18
SCRP case
19
ITAB Self Scanning
20
Back office
ScanFlow Cash Register Protocol
21
IDLE
OPEN
TRANSING
ENDING
Open account
Register articlesClose account
Pay bill
Initialize SCRP Service (from spec)
Command
• None; a transport connection suffices.
Response
• 220 SCRP Service ready
22
Cash Register Sign On
Command
• SIGNON <SFU_id>[:<password>]
Response
• 251 Signed On
• 450 Signing rejected
• 551 Authentication failed
23
Open Account
Command
• OPEN [<account>|<barcode>]
Response
• 231 <account> Account opened
• 530 No such account
• 531 Invalid account state
24
Request Article Registration
Command
• ARTREG [<barcode>[:<amount>]]
Response• {212 <description>[:<price>[:<amount>]]}
232 <nr_articles>:<subtotal> Article registered
• 511 No such article
• 531 Invalid account state
25
Close Current Account
Command
• CLOSE
Response• {212 description>[:<price>[:<amount>]]}
230 <endtotal> Account closed
• 531 Invalid account state
26
Request Account Transaction
Command
• TRANS <tr_method>>[:<amount>]
Response
• 240 Transaction succeeded
• 531 Invalid account state
• 540 No such transaction method
• 542 <failure_ind> Transaction failed
27
Round-up Account
Command
• IDLE
Response
• 233 Account idled
• 531 Invalid account state
28
How to test manually?
demo
29
How to test with MBT?
demo
30
Modeling concepts
• channel– A channel over which the system
communicates with its environment
• state– A named state in model
• send ‘label’– Specifies that system can send ‘label’
• receive ‘label’– Specifies that system can receive ‘label’
31
Start: A simple model
• Initialize service
• Signon
• Open
• Article registration
• Close
• Pay
• Reset to idle32
Pleasant modeling
• macro’s
• behaviors
• choice
• repeat
33
34
TIL?
TIL
• AML process modeling language
• Axini MBT approach
• MBT can be applied to real world problems
• How we generate many test-cases from 1 model
• Axini TestManager
35