SlideShare uma empresa Scribd logo
Ngo Hoang Minh
TEST DESIGN WITH ACTION-
BASED TESTING
METHODOLOGY
Who is your speaker?
2
• Software testing company, around since 1994
• Testing and test automation services:
– consultancy, training
– test development and automation services
– "test integrated" development services
• Products:
– TestArchitect™, TestArchitect for Visual Studio™
– integrating test development with test management and automation
– based on modularized keyword-driven testing
• LogiGear Magazine:
– themed issues, non-commercial
LogiGear Corporation
 Background in computer science, management
 Since 2009 focusing on automated testing
 keywords, agile testing
Ngo Hoang Minh
3
Test Design With Action-Based
4
• Introduction
• Action Based Testing, Test Modules
• Success factors of test design (for automation)
• Test case design
• Action design
• Final
Agenda
5
Introduction
Testing Under Pressure
6
specification development test
DEADLINE
Testing Under Pressure –
"Shift Left"
7
specification development test
DEADLINE
Develop tests in time:
• Test design
• Auditing, acceptance
• Preparations
• Automation
8
Action Based Testing
Risks of keyword and scenario approaches
9
• Often seen as silver bullet, complications are
underestimated
– often treated as a technical "trick"
– testers can get squeezed and marginalized
• developers and users dictating tests
• automation engineers dictating actions
– testers can end up with an automation responsibility, thus becoming pseudo
programmers
• The method needs understanding and experience to be
successful
– pitfalls are many, and can have a negative effect on the outcome
• Lack of method and structure can risk manageability
– maintainability not as good as hoped
– results can be disappointing, approach will be blamed
Action Based Testing (ABT)
10
• Uses the keyword based "actions" as basis for a method
– Covers test management, test development and automation
– With a large focus on test design as the main driver for automation
success
– Method is specific, but concepts are generic
• The central product in ABT is the "Test Module", not the test
case
– Like chapters in a book
• test cases are part of the test modules,
– Test development is seen as having both analytical and creative aspects
– Developed as spread sheets, external from the automation
– Each test module is a separate (mini) project, each test module can
involve different stake holders
Test Module
11
Test Module
Initial - setup
Objectives
Test cases
Final - cleanup
Test Modules versus Test Cases
12
• The test module is a bigger unit in the test design
– Easier to identify
– A chapter rather than a paragraph
• Better flow of execution
– Each test case can set up for the next one
– Keep test modules independent, test cases can be dependent
• Test cases become creative output, rather than stifling input
– Avoids having to define all test cases at once early in the process
• Clear scope helps to identify cases, actions and checks
13
Test Design Success Factors
Why Better Test Design?
14
• Better test design can improve quality of test
– Many tests are often quite "mechanical" now, no surprises
– One to one related to specifications, user stories or requirements,
which often is ok, but lacks aggression
– No combinations, no unexpected situations, lame and boring
– Such tests have a hard time finding (interesting) bugs
• Better test design can give (much) better automation
– Unneeded details are left out of tests
– Avoiding "over checking“
– Limit the impact of system changes on tests, making such impact
more manageable
The Three “Holy Grails” of Test
Design
15
• Metaphor to depict three main steps in test design
• Using "grail" to illustrate that there is no single perfect
solution, but that it matters to pay attention
Organization of tests into test modules
Right approach for each test module
Proper level of detail in the test specification
What's the trick...
16
What's the trick...
17
• Have or acquire facilities to store and organize your
content
• Select your stuff
• Decide where to put what
– assign and label the shelves
• Put it there
• If the organization is not sufficient anymore, add to it
or change it
Properties of a good Breakdown
18
 Reflects the level of tests
 Well differentiated and clear in scope
 Balanced in size and amount
 Modules mutually independent
 Fitting the priorities and planning of the project
Breakdown Criteria
19
• Common Criteria
– Functionality (customers, finances, management information, UI, ...)
– Architecture of the system under test (client, server, protocol, sub systems,
components, modules, ...)
– Kind of test (navigation flow, negative tests, response time, ...)
• Additional Criteria
– Stakeholders (like "Accounting", "Compliance", "HR", ...)
– Complexity of the test (put complex tests in separate modules)
– Execution aspects (special hardware, multi-station, ...)
– Project planning (availability of information, timelines, sprints, ...)
– Risks involved (extra test modules for high risk areas)
– Ambition level (smoke test, regression, aggressive, …)
Approach 1: Workshop
20
• Gather a meeting with relevant participants
– test developers
– domain experts
– automation engineer (focus on efficiency of automation)
– experienced moderator
– also consider: developers, managers
• If necessary, provide training of participants
before the discussion
• I prefer this approach, in particular to start off
Approach 2: Design and Feedback
21
• One or two experienced test designers create a
first draft
• The draft is delivered/discussed to relevant
parties
• Ask the parties to verify:
1. Structure: does it make sense
2. Completeness: are all relevant areas covered
• Based on feedback, further modify the design
22
Test Case Design
Grail 2: Approach per Test Module
23
 When to develop: do we have enough information?
 When to execute: make sure lower level stuff working first
Plan the test module:
 Do an intake: understand what is needed and devise an approach
 Analyze requirements, formulate "test objectives", create tests
Process :
 See the test development as a "learning process", about the business domain, the
application structure, the interaction, etc
 Talk about your tests, make them strong
Exploratory approach:
 Users, subject matter experts, developers, auditors, etc
Identify stakeholders and their involvement:
 Users, subject matter experts, developers, auditors, etc
Identify stakeholders and their involvement:
Clarify your objectives with your tests . . .
24
requirement,
specification,
…
test case
requirement,
specification,
…
test objective test case
direct relation indirect relation via a test objective
Linking through test objectives can help easier traceability:
...
TO-3.51 The exit date must be after the entry date
...
test objective TO-3.51
name entry date exit date
enter employment Bill Goodfellow 2016-10-02 2016-10-01
check error message The exit date must be after the entry date.
Test Objectives
25
• Keep test objectives short and simple
• Focus on what to test, not how
• Split longer texts into atomic sentences
• Typically test objectives will be like:
– cause and effect ("clicking clear clears all fields")
– condition and effect ("if all fields filled, 'ok' is enabled")
Eye on the ball, Scope
26
• Always know the scope of the test module
• The scope should be unambiguous
• The scope determines many things:
– what the test objectives are
– which test cases to expect
– what level of actions to use
– what the checks are about and which events should
generate a warning or error (if a “lower” functionality is
wrong)
Use of "Anti-patterns"
27
• Informal way to classify typical test design problems
• Use with care, can come across offensive
• The point of view in the following list is automation: test
design choices that can be counter-productive to
automation
• However, lack of good organization can also effect the
quality of manual tests
28
Action Design
Grail 3: Specification Level, choosing
actions
29
• Scope of the test determines the action level
• As high level as appropriate, as little arguments as possible
• Clear names for actions
• Avoid "engineer" styles for names of actions and arguments
– tests are not source code
– like no spaces, uppercase, camel-case or underlines
• Manage and document the Actions
• Try to treat as a "by-product of test design"
Low-level, high-level, mid-level
actions
30
enter customer
enter address fields
enter select set . . .. . .
"Low level": detailed interaction with the UI (or API)
- generic, do not show any functional or business logic
- examples: "click", "expand tree node", "select menu"
"Mid level": common sequences at a more
detailed application level
- usually to wrap a form or dialog
- for use in high level actions
- greatly enhance maintainability
- example: "enter address fields"
"High level": a business domain operation or check on the
application under test
hide the interaction
examples: "enter customer", "rent car", "check balance"
Use the right level actions
31
Low level of UI interaction detail makes sense only with the module
scope is to test the UI
window tree tree item path
click tree item main projects /Projects/Drill Assembly
window list item
check list item exists main tasks Plan of Approach
Better to have a business level action and hide the details in an action
definition:
But do show details when it matters. The example below is too high level,
requires drill down into action definition to understand what is tested.
32
Finally
Takeaways
33
• Test design is a major contributor to automation success,
often more than technical prowess
• Domain language approaches like Actions and BDD allow
for efficient communication and driving of automation
• Test modules can help organize the tests, and focus their
scopes
• Focusing tests, checks and actions on a clear and
differentiated scope will make for better tests, but also
better automation
© 2014 HCMC Software Testing Club
THANK YOU

Mais conteúdo relacionado

Mais procurados

Testes de Performance com JMeter
Testes de Performance com JMeterTestes de Performance com JMeter
Testes de Performance com JMeterEdlaine Zamora
 
Create an architecture for web test automation
Create an architecture for web test automationCreate an architecture for web test automation
Create an architecture for web test automationElias Nogueira
 
Test Design and Automation for REST API
Test Design and Automation for REST APITest Design and Automation for REST API
Test Design and Automation for REST APIIvan Katunou
 
Robot Framework no DevTests #34
Robot Framework no DevTests #34Robot Framework no DevTests #34
Robot Framework no DevTests #34Mayara Fernandes
 
Agile Testing Process
Agile Testing ProcessAgile Testing Process
Agile Testing ProcessIntetics
 
223: Modernization and Migrating from the ESB to Containers
223: Modernization and Migrating from the ESB to Containers223: Modernization and Migrating from the ESB to Containers
223: Modernization and Migrating from the ESB to ContainersTrevor Dolby
 
4 Major Advantages of API Testing
4 Major Advantages of API Testing4 Major Advantages of API Testing
4 Major Advantages of API TestingQASource
 
How To Write A Test Case In Software Testing | Edureka
How To Write A Test Case In Software Testing | EdurekaHow To Write A Test Case In Software Testing | Edureka
How To Write A Test Case In Software Testing | EdurekaEdureka!
 
API Testing Presentations.pptx
API Testing Presentations.pptxAPI Testing Presentations.pptx
API Testing Presentations.pptxManmitSalunke
 
MLlib: Spark's Machine Learning Library
MLlib: Spark's Machine Learning LibraryMLlib: Spark's Machine Learning Library
MLlib: Spark's Machine Learning Libraryjeykottalam
 
Testing Your APIs: Postman, Newman, and Beyond
Testing Your APIs: Postman, Newman, and BeyondTesting Your APIs: Postman, Newman, and Beyond
Testing Your APIs: Postman, Newman, and BeyondPostman
 

Mais procurados (20)

Testes de Performance com JMeter
Testes de Performance com JMeterTestes de Performance com JMeter
Testes de Performance com JMeter
 
Create an architecture for web test automation
Create an architecture for web test automationCreate an architecture for web test automation
Create an architecture for web test automation
 
Test Design and Automation for REST API
Test Design and Automation for REST APITest Design and Automation for REST API
Test Design and Automation for REST API
 
Robot Framework no DevTests #34
Robot Framework no DevTests #34Robot Framework no DevTests #34
Robot Framework no DevTests #34
 
Jmeter tool
Jmeter toolJmeter tool
Jmeter tool
 
Agile Testing Process
Agile Testing ProcessAgile Testing Process
Agile Testing Process
 
Postman
PostmanPostman
Postman
 
API Testing for everyone.pptx
API Testing for everyone.pptxAPI Testing for everyone.pptx
API Testing for everyone.pptx
 
223: Modernization and Migrating from the ESB to Containers
223: Modernization and Migrating from the ESB to Containers223: Modernization and Migrating from the ESB to Containers
223: Modernization and Migrating from the ESB to Containers
 
4 Major Advantages of API Testing
4 Major Advantages of API Testing4 Major Advantages of API Testing
4 Major Advantages of API Testing
 
How To Write A Test Case In Software Testing | Edureka
How To Write A Test Case In Software Testing | EdurekaHow To Write A Test Case In Software Testing | Edureka
How To Write A Test Case In Software Testing | Edureka
 
Appium
AppiumAppium
Appium
 
Api testing
Api testingApi testing
Api testing
 
API Testing Presentations.pptx
API Testing Presentations.pptxAPI Testing Presentations.pptx
API Testing Presentations.pptx
 
MLlib: Spark's Machine Learning Library
MLlib: Spark's Machine Learning LibraryMLlib: Spark's Machine Learning Library
MLlib: Spark's Machine Learning Library
 
Test Automation
Test AutomationTest Automation
Test Automation
 
Automation Testing & TDD
Automation Testing & TDDAutomation Testing & TDD
Automation Testing & TDD
 
TestNG Framework
TestNG Framework TestNG Framework
TestNG Framework
 
Testing Your APIs: Postman, Newman, and Beyond
Testing Your APIs: Postman, Newman, and BeyondTesting Your APIs: Postman, Newman, and Beyond
Testing Your APIs: Postman, Newman, and Beyond
 
HP ALM
HP ALMHP ALM
HP ALM
 

Destaque

A Novel Approach of Automation Test for Software Monitoring Solution - Tran S...
A Novel Approach of Automation Test for Software Monitoring Solution - Tran S...A Novel Approach of Automation Test for Software Monitoring Solution - Tran S...
A Novel Approach of Automation Test for Software Monitoring Solution - Tran S...Ho Chi Minh City Software Testing Club
 
Deliver Fast, Break Nothing Via Effective Building Developer and Tester Colla...
Deliver Fast, Break Nothing Via Effective Building Developer and Tester Colla...Deliver Fast, Break Nothing Via Effective Building Developer and Tester Colla...
Deliver Fast, Break Nothing Via Effective Building Developer and Tester Colla...Ho Chi Minh City Software Testing Club
 
The New Agile Testing Quadrants: Bringing Skilled Testers and Developers Toge...
The New Agile Testing Quadrants: Bringing Skilled Testers and Developers Toge...The New Agile Testing Quadrants: Bringing Skilled Testers and Developers Toge...
The New Agile Testing Quadrants: Bringing Skilled Testers and Developers Toge...Ho Chi Minh City Software Testing Club
 
A Universal Automation Framework based on BDD Cucumber and Ruby on Rails - Ph...
A Universal Automation Framework based on BDD Cucumber and Ruby on Rails - Ph...A Universal Automation Framework based on BDD Cucumber and Ruby on Rails - Ph...
A Universal Automation Framework based on BDD Cucumber and Ruby on Rails - Ph...Ho Chi Minh City Software Testing Club
 
Introduction to Back End Automation Testing - Nguyen Vu Hoang, Hoang Phi
Introduction to Back End Automation Testing - Nguyen Vu Hoang, Hoang PhiIntroduction to Back End Automation Testing - Nguyen Vu Hoang, Hoang Phi
Introduction to Back End Automation Testing - Nguyen Vu Hoang, Hoang PhiHo Chi Minh City Software Testing Club
 
Zermatt Summit 2014 "The Courage to Dare" Program and Highlights
Zermatt Summit 2014 "The Courage to Dare" Program and HighlightsZermatt Summit 2014 "The Courage to Dare" Program and Highlights
Zermatt Summit 2014 "The Courage to Dare" Program and HighlightsZermatt Summit Foundation
 

Destaque (20)

Mobile Video Games Testing Principles - Benjamin Poirrier
Mobile Video Games Testing Principles - Benjamin PoirrierMobile Video Games Testing Principles - Benjamin Poirrier
Mobile Video Games Testing Principles - Benjamin Poirrier
 
Security testing-What can we do - Trinh Minh Hien
Security testing-What can we do - Trinh Minh HienSecurity testing-What can we do - Trinh Minh Hien
Security testing-What can we do - Trinh Minh Hien
 
A Novel Approach of Automation Test for Software Monitoring Solution - Tran S...
A Novel Approach of Automation Test for Software Monitoring Solution - Tran S...A Novel Approach of Automation Test for Software Monitoring Solution - Tran S...
A Novel Approach of Automation Test for Software Monitoring Solution - Tran S...
 
Deliver Fast, Break Nothing Via Effective Building Developer and Tester Colla...
Deliver Fast, Break Nothing Via Effective Building Developer and Tester Colla...Deliver Fast, Break Nothing Via Effective Building Developer and Tester Colla...
Deliver Fast, Break Nothing Via Effective Building Developer and Tester Colla...
 
Agile Testing - Not Just Tester’s Story _ Dang Thanh Long
Agile Testing - Not Just Tester’s Story _ Dang Thanh LongAgile Testing - Not Just Tester’s Story _ Dang Thanh Long
Agile Testing - Not Just Tester’s Story _ Dang Thanh Long
 
The New Agile Testing Quadrants: Bringing Skilled Testers and Developers Toge...
The New Agile Testing Quadrants: Bringing Skilled Testers and Developers Toge...The New Agile Testing Quadrants: Bringing Skilled Testers and Developers Toge...
The New Agile Testing Quadrants: Bringing Skilled Testers and Developers Toge...
 
A Universal Automation Framework based on BDD Cucumber and Ruby on Rails - Ph...
A Universal Automation Framework based on BDD Cucumber and Ruby on Rails - Ph...A Universal Automation Framework based on BDD Cucumber and Ruby on Rails - Ph...
A Universal Automation Framework based on BDD Cucumber and Ruby on Rails - Ph...
 
Analytical Risk-based and Specification-based Testing - Bui Duy Tam
Analytical Risk-based and Specification-based Testing - Bui Duy TamAnalytical Risk-based and Specification-based Testing - Bui Duy Tam
Analytical Risk-based and Specification-based Testing - Bui Duy Tam
 
Introduction to Back End Automation Testing - Nguyen Vu Hoang, Hoang Phi
Introduction to Back End Automation Testing - Nguyen Vu Hoang, Hoang PhiIntroduction to Back End Automation Testing - Nguyen Vu Hoang, Hoang Phi
Introduction to Back End Automation Testing - Nguyen Vu Hoang, Hoang Phi
 
Web API Test Automation Using Frisby & Node.js
Web API Test Automation Using Frisby  & Node.jsWeb API Test Automation Using Frisby  & Node.js
Web API Test Automation Using Frisby & Node.js
 
Common Web UI Problems Transforming Manual to Automation
Common Web UI Problems Transforming Manual to Automation Common Web UI Problems Transforming Manual to Automation
Common Web UI Problems Transforming Manual to Automation
 
[HCMC STC Jan 2015] Making IT Count – Agile Test Metrics
[HCMC STC Jan 2015] Making IT Count – Agile Test Metrics[HCMC STC Jan 2015] Making IT Count – Agile Test Metrics
[HCMC STC Jan 2015] Making IT Count – Agile Test Metrics
 
[HCMC STC Jan 2015] Practical Experiences In Test Automation
[HCMC STC Jan 2015] Practical Experiences In Test Automation[HCMC STC Jan 2015] Practical Experiences In Test Automation
[HCMC STC Jan 2015] Practical Experiences In Test Automation
 
[HCMC STC Jan 2015] FATS: A Framework For Automated Testing Scenarios
[HCMC STC Jan 2015] FATS: A Framework For Automated Testing Scenarios[HCMC STC Jan 2015] FATS: A Framework For Automated Testing Scenarios
[HCMC STC Jan 2015] FATS: A Framework For Automated Testing Scenarios
 
Building an effective mobile testing strategy
Building an effective mobile testing strategyBuilding an effective mobile testing strategy
Building an effective mobile testing strategy
 
[HCMC STC Jan 2015] Risk-Based Software Testing Approaches
[HCMC STC Jan 2015] Risk-Based Software Testing Approaches[HCMC STC Jan 2015] Risk-Based Software Testing Approaches
[HCMC STC Jan 2015] Risk-Based Software Testing Approaches
 
Why a Mobile Test Strategy is just Test Strategy
Why a Mobile Test Strategy is just Test StrategyWhy a Mobile Test Strategy is just Test Strategy
Why a Mobile Test Strategy is just Test Strategy
 
Key Factors To Ensure Test Automation Framework Success
Key Factors To Ensure Test Automation Framework SuccessKey Factors To Ensure Test Automation Framework Success
Key Factors To Ensure Test Automation Framework Success
 
Panel2 ana pantelic
Panel2 ana pantelicPanel2 ana pantelic
Panel2 ana pantelic
 
Zermatt Summit 2014 "The Courage to Dare" Program and Highlights
Zermatt Summit 2014 "The Courage to Dare" Program and HighlightsZermatt Summit 2014 "The Courage to Dare" Program and Highlights
Zermatt Summit 2014 "The Courage to Dare" Program and Highlights
 

Semelhante a Test Design with Action-based Testing Methodology - Ngo Hoang Minh

Oose unit 5 ppt
Oose unit 5 pptOose unit 5 ppt
Oose unit 5 pptDr VISU P
 
OOSE Unit 5 PPT.ppt
OOSE Unit 5 PPT.pptOOSE Unit 5 PPT.ppt
OOSE Unit 5 PPT.pptitadmin33
 
Software Testing Process & Trend
Software Testing Process & TrendSoftware Testing Process & Trend
Software Testing Process & TrendKMS Technology
 
lect3-Life-Cycle-models-I.pptx
lect3-Life-Cycle-models-I.pptxlect3-Life-Cycle-models-I.pptx
lect3-Life-Cycle-models-I.pptxJohnRambo709260
 
Introduction To Testing by enosislearning.com
Introduction To Testing by enosislearning.com Introduction To Testing by enosislearning.com
Introduction To Testing by enosislearning.com enosislearningcom
 
New Model Testing: A New Test Process and Tool
New Model Testing:  A New Test Process and ToolNew Model Testing:  A New Test Process and Tool
New Model Testing: A New Test Process and ToolTEST Huddle
 
Top Ten Tips for Tackling Test Automation Webinar Presentation.pptx
Top Ten Tips for Tackling Test Automation Webinar Presentation.pptxTop Ten Tips for Tackling Test Automation Webinar Presentation.pptx
Top Ten Tips for Tackling Test Automation Webinar Presentation.pptxInflectra
 
Paul Gerrard - The Redistribution of Testing – Where to Innovate and What to ...
Paul Gerrard - The Redistribution of Testing – Where to Innovate and What to ...Paul Gerrard - The Redistribution of Testing – Where to Innovate and What to ...
Paul Gerrard - The Redistribution of Testing – Where to Innovate and What to ...TEST Huddle
 
Software Engineering : Process Models
Software Engineering : Process ModelsSoftware Engineering : Process Models
Software Engineering : Process ModelsAjit Nayak
 
software requirement
software requirement software requirement
software requirement nimmik4u
 
Mt s11 test_design
Mt s11 test_designMt s11 test_design
Mt s11 test_designTestingGeeks
 
тестовые стратегии
тестовые стратегиитестовые стратегии
тестовые стратегииCOMAQA.BY
 
Разработка эффективной тестовой стратегии, Антон Семенченко
Разработка эффективной тестовой стратегии, Антон СеменченкоРазработка эффективной тестовой стратегии, Антон Семенченко
Разработка эффективной тестовой стратегии, Антон СеменченкоCOMAQA.BY
 
Problem Solving Methodology 2011 - 2014
Problem Solving Methodology 2011 - 2014Problem Solving Methodology 2011 - 2014
Problem Solving Methodology 2011 - 2014snoonan
 
Continuous testing in agile projects 2015
Continuous testing in agile projects 2015Continuous testing in agile projects 2015
Continuous testing in agile projects 2015Fabricio Epaminondas
 
Test Management Tool HP ALM- Quality Center Part 2
Test Management Tool  HP ALM- Quality Center Part 2Test Management Tool  HP ALM- Quality Center Part 2
Test Management Tool HP ALM- Quality Center Part 2Murageppa-QA
 

Semelhante a Test Design with Action-based Testing Methodology - Ngo Hoang Minh (20)

Oose unit 5 ppt
Oose unit 5 pptOose unit 5 ppt
Oose unit 5 ppt
 
OOSE Unit 5 PPT.ppt
OOSE Unit 5 PPT.pptOOSE Unit 5 PPT.ppt
OOSE Unit 5 PPT.ppt
 
Software Testing Process & Trend
Software Testing Process & TrendSoftware Testing Process & Trend
Software Testing Process & Trend
 
lect3-Life-Cycle-models-I.pptx
lect3-Life-Cycle-models-I.pptxlect3-Life-Cycle-models-I.pptx
lect3-Life-Cycle-models-I.pptx
 
Introduction To Testing by enosislearning.com
Introduction To Testing by enosislearning.com Introduction To Testing by enosislearning.com
Introduction To Testing by enosislearning.com
 
Mg6088 spm unit-2
Mg6088 spm unit-2Mg6088 spm unit-2
Mg6088 spm unit-2
 
New Model Testing: A New Test Process and Tool
New Model Testing:  A New Test Process and ToolNew Model Testing:  A New Test Process and Tool
New Model Testing: A New Test Process and Tool
 
Top Ten Tips for Tackling Test Automation Webinar Presentation.pptx
Top Ten Tips for Tackling Test Automation Webinar Presentation.pptxTop Ten Tips for Tackling Test Automation Webinar Presentation.pptx
Top Ten Tips for Tackling Test Automation Webinar Presentation.pptx
 
Paul Gerrard - The Redistribution of Testing – Where to Innovate and What to ...
Paul Gerrard - The Redistribution of Testing – Where to Innovate and What to ...Paul Gerrard - The Redistribution of Testing – Where to Innovate and What to ...
Paul Gerrard - The Redistribution of Testing – Where to Innovate and What to ...
 
Software Engineering : Process Models
Software Engineering : Process ModelsSoftware Engineering : Process Models
Software Engineering : Process Models
 
software requirement
software requirement software requirement
software requirement
 
Mt s11 test_design
Mt s11 test_designMt s11 test_design
Mt s11 test_design
 
тестовые стратегии
тестовые стратегиитестовые стратегии
тестовые стратегии
 
Разработка эффективной тестовой стратегии, Антон Семенченко
Разработка эффективной тестовой стратегии, Антон СеменченкоРазработка эффективной тестовой стратегии, Антон Семенченко
Разработка эффективной тестовой стратегии, Антон Семенченко
 
Problem Solving Methodology 2011 - 2014
Problem Solving Methodology 2011 - 2014Problem Solving Methodology 2011 - 2014
Problem Solving Methodology 2011 - 2014
 
Robotics
RoboticsRobotics
Robotics
 
Methodology: IT test
Methodology: IT testMethodology: IT test
Methodology: IT test
 
L software testing
L   software testingL   software testing
L software testing
 
Continuous testing in agile projects 2015
Continuous testing in agile projects 2015Continuous testing in agile projects 2015
Continuous testing in agile projects 2015
 
Test Management Tool HP ALM- Quality Center Part 2
Test Management Tool  HP ALM- Quality Center Part 2Test Management Tool  HP ALM- Quality Center Part 2
Test Management Tool HP ALM- Quality Center Part 2
 

Mais de Ho Chi Minh City Software Testing Club

[HCMC STC Jan 2015] Developing an Offshore Context-Driven Testing Team
[HCMC STC Jan 2015] Developing an Offshore Context-Driven Testing Team[HCMC STC Jan 2015] Developing an Offshore Context-Driven Testing Team
[HCMC STC Jan 2015] Developing an Offshore Context-Driven Testing TeamHo Chi Minh City Software Testing Club
 
[HCMC STC Jan 2015] Proving Our Worth Quantifying The Value Of Testing
[HCMC STC Jan 2015] Proving Our Worth  Quantifying The Value Of Testing[HCMC STC Jan 2015] Proving Our Worth  Quantifying The Value Of Testing
[HCMC STC Jan 2015] Proving Our Worth Quantifying The Value Of TestingHo Chi Minh City Software Testing Club
 
[HCMC STC Jan 2015] Choosing The Best Of The Plan-Driven And Agile Developmen...
[HCMC STC Jan 2015] Choosing The Best Of The Plan-Driven And Agile Developmen...[HCMC STC Jan 2015] Choosing The Best Of The Plan-Driven And Agile Developmen...
[HCMC STC Jan 2015] Choosing The Best Of The Plan-Driven And Agile Developmen...Ho Chi Minh City Software Testing Club
 
[HCMC STC Jan 2015] How To Work Effectively As a Tester in Agile Teams
[HCMC STC Jan 2015] How To Work Effectively As a Tester in Agile Teams[HCMC STC Jan 2015] How To Work Effectively As a Tester in Agile Teams
[HCMC STC Jan 2015] How To Work Effectively As a Tester in Agile TeamsHo Chi Minh City Software Testing Club
 
Ho Chi Minh City Software Testing Conference 2014 "Stay on the cutting-edge" ...
Ho Chi Minh City Software Testing Conference 2014 "Stay on the cutting-edge" ...Ho Chi Minh City Software Testing Conference 2014 "Stay on the cutting-edge" ...
Ho Chi Minh City Software Testing Conference 2014 "Stay on the cutting-edge" ...Ho Chi Minh City Software Testing Club
 
[Vu Van Nguyen] Value-based Software Testing an Approach to Prioritizing Tests
[Vu Van Nguyen]  Value-based Software Testing an Approach to Prioritizing Tests[Vu Van Nguyen]  Value-based Software Testing an Approach to Prioritizing Tests
[Vu Van Nguyen] Value-based Software Testing an Approach to Prioritizing TestsHo Chi Minh City Software Testing Club
 
[Thong Nguyen & Trong Bui] Behavior Driven Development (BDD) and Automation T...
[Thong Nguyen & Trong Bui] Behavior Driven Development (BDD) and Automation T...[Thong Nguyen & Trong Bui] Behavior Driven Development (BDD) and Automation T...
[Thong Nguyen & Trong Bui] Behavior Driven Development (BDD) and Automation T...Ho Chi Minh City Software Testing Club
 

Mais de Ho Chi Minh City Software Testing Club (12)

[HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile
[HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile[HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile
[HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile
 
[HCMC STC Jan 2015] Developing an Offshore Context-Driven Testing Team
[HCMC STC Jan 2015] Developing an Offshore Context-Driven Testing Team[HCMC STC Jan 2015] Developing an Offshore Context-Driven Testing Team
[HCMC STC Jan 2015] Developing an Offshore Context-Driven Testing Team
 
[HCMC STC Jan 2015] Proving Our Worth Quantifying The Value Of Testing
[HCMC STC Jan 2015] Proving Our Worth  Quantifying The Value Of Testing[HCMC STC Jan 2015] Proving Our Worth  Quantifying The Value Of Testing
[HCMC STC Jan 2015] Proving Our Worth Quantifying The Value Of Testing
 
[HCMC STC Jan 2015] Choosing The Best Of The Plan-Driven And Agile Developmen...
[HCMC STC Jan 2015] Choosing The Best Of The Plan-Driven And Agile Developmen...[HCMC STC Jan 2015] Choosing The Best Of The Plan-Driven And Agile Developmen...
[HCMC STC Jan 2015] Choosing The Best Of The Plan-Driven And Agile Developmen...
 
[HCMC STC Jan 2015] Creating a Better Testing Future
[HCMC STC Jan 2015] Creating a Better Testing Future[HCMC STC Jan 2015] Creating a Better Testing Future
[HCMC STC Jan 2015] Creating a Better Testing Future
 
[HCMC STC Jan 2015] How To Work Effectively As a Tester in Agile Teams
[HCMC STC Jan 2015] How To Work Effectively As a Tester in Agile Teams[HCMC STC Jan 2015] How To Work Effectively As a Tester in Agile Teams
[HCMC STC Jan 2015] How To Work Effectively As a Tester in Agile Teams
 
[HCMC STC Jan 2015] Performing Target Test in UMTS Network
[HCMC STC Jan 2015] Performing Target Test in UMTS Network[HCMC STC Jan 2015] Performing Target Test in UMTS Network
[HCMC STC Jan 2015] Performing Target Test in UMTS Network
 
Selecting the Right Automated Testing tool
Selecting the Right Automated Testing tool Selecting the Right Automated Testing tool
Selecting the Right Automated Testing tool
 
Ho Chi Minh City Software Testing Conference 2014 "Stay on the cutting-edge" ...
Ho Chi Minh City Software Testing Conference 2014 "Stay on the cutting-edge" ...Ho Chi Minh City Software Testing Conference 2014 "Stay on the cutting-edge" ...
Ho Chi Minh City Software Testing Conference 2014 "Stay on the cutting-edge" ...
 
[Vu Van Nguyen] Value-based Software Testing an Approach to Prioritizing Tests
[Vu Van Nguyen]  Value-based Software Testing an Approach to Prioritizing Tests[Vu Van Nguyen]  Value-based Software Testing an Approach to Prioritizing Tests
[Vu Van Nguyen] Value-based Software Testing an Approach to Prioritizing Tests
 
[Vu Van Nguyen] Test Estimation in Practice
[Vu Van Nguyen]  Test Estimation in Practice[Vu Van Nguyen]  Test Estimation in Practice
[Vu Van Nguyen] Test Estimation in Practice
 
[Thong Nguyen & Trong Bui] Behavior Driven Development (BDD) and Automation T...
[Thong Nguyen & Trong Bui] Behavior Driven Development (BDD) and Automation T...[Thong Nguyen & Trong Bui] Behavior Driven Development (BDD) and Automation T...
[Thong Nguyen & Trong Bui] Behavior Driven Development (BDD) and Automation T...
 

Último

A Comprehensive Appium Guide for Hybrid App Automation Testing.pdf
A Comprehensive Appium Guide for Hybrid App Automation Testing.pdfA Comprehensive Appium Guide for Hybrid App Automation Testing.pdf
A Comprehensive Appium Guide for Hybrid App Automation Testing.pdfkalichargn70th171
 
10 Essential Software Testing Tools You Need to Know About.pdf
10 Essential Software Testing Tools You Need to Know About.pdf10 Essential Software Testing Tools You Need to Know About.pdf
10 Essential Software Testing Tools You Need to Know About.pdfkalichargn70th171
 
Designing for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web ServicesDesigning for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web ServicesKrzysztofKkol1
 
Benefits of Employee Monitoring Software
Benefits of  Employee Monitoring SoftwareBenefits of  Employee Monitoring Software
Benefits of Employee Monitoring SoftwareMera Monitor
 
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...rajkumar669520
 
Abortion ^Clinic ^%[+971588192166''] Abortion Pill Al Ain (?@?) Abortion Pill...
Abortion ^Clinic ^%[+971588192166''] Abortion Pill Al Ain (?@?) Abortion Pill...Abortion ^Clinic ^%[+971588192166''] Abortion Pill Al Ain (?@?) Abortion Pill...
Abortion ^Clinic ^%[+971588192166''] Abortion Pill Al Ain (?@?) Abortion Pill...Abortion Clinic
 
CompTIA Security+ (Study Notes) for cs.pdf
CompTIA Security+ (Study Notes) for cs.pdfCompTIA Security+ (Study Notes) for cs.pdf
CompTIA Security+ (Study Notes) for cs.pdfFurqanuddin10
 
GraphAware - Transforming policing with graph-based intelligence analysis
GraphAware - Transforming policing with graph-based intelligence analysisGraphAware - Transforming policing with graph-based intelligence analysis
GraphAware - Transforming policing with graph-based intelligence analysisNeo4j
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2
 
AI/ML Infra Meetup | ML explainability in Michelangelo
AI/ML Infra Meetup | ML explainability in MichelangeloAI/ML Infra Meetup | ML explainability in Michelangelo
AI/ML Infra Meetup | ML explainability in MichelangeloAlluxio, Inc.
 
OpenChain @ LF Japan Executive Briefing - May 2024
OpenChain @ LF Japan Executive Briefing - May 2024OpenChain @ LF Japan Executive Briefing - May 2024
OpenChain @ LF Japan Executive Briefing - May 2024Shane Coughlan
 
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product UpdatesGraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product UpdatesNeo4j
 
Advanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should KnowAdvanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should KnowPeter Caitens
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTier1 app
 
A Guideline to Zendesk to Re:amaze Data Migration
A Guideline to Zendesk to Re:amaze Data MigrationA Guideline to Zendesk to Re:amaze Data Migration
A Guideline to Zendesk to Re:amaze Data MigrationHelp Desk Migration
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfOrtus Solutions, Corp
 
INGKA DIGITAL: Linked Metadata by Design
INGKA DIGITAL: Linked Metadata by DesignINGKA DIGITAL: Linked Metadata by Design
INGKA DIGITAL: Linked Metadata by DesignNeo4j
 
top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownloadvrstrong314
 

Último (20)

A Comprehensive Appium Guide for Hybrid App Automation Testing.pdf
A Comprehensive Appium Guide for Hybrid App Automation Testing.pdfA Comprehensive Appium Guide for Hybrid App Automation Testing.pdf
A Comprehensive Appium Guide for Hybrid App Automation Testing.pdf
 
10 Essential Software Testing Tools You Need to Know About.pdf
10 Essential Software Testing Tools You Need to Know About.pdf10 Essential Software Testing Tools You Need to Know About.pdf
10 Essential Software Testing Tools You Need to Know About.pdf
 
Designing for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web ServicesDesigning for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web Services
 
Benefits of Employee Monitoring Software
Benefits of  Employee Monitoring SoftwareBenefits of  Employee Monitoring Software
Benefits of Employee Monitoring Software
 
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
 
Abortion ^Clinic ^%[+971588192166''] Abortion Pill Al Ain (?@?) Abortion Pill...
Abortion ^Clinic ^%[+971588192166''] Abortion Pill Al Ain (?@?) Abortion Pill...Abortion ^Clinic ^%[+971588192166''] Abortion Pill Al Ain (?@?) Abortion Pill...
Abortion ^Clinic ^%[+971588192166''] Abortion Pill Al Ain (?@?) Abortion Pill...
 
CompTIA Security+ (Study Notes) for cs.pdf
CompTIA Security+ (Study Notes) for cs.pdfCompTIA Security+ (Study Notes) for cs.pdf
CompTIA Security+ (Study Notes) for cs.pdf
 
GraphAware - Transforming policing with graph-based intelligence analysis
GraphAware - Transforming policing with graph-based intelligence analysisGraphAware - Transforming policing with graph-based intelligence analysis
GraphAware - Transforming policing with graph-based intelligence analysis
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
AI/ML Infra Meetup | ML explainability in Michelangelo
AI/ML Infra Meetup | ML explainability in MichelangeloAI/ML Infra Meetup | ML explainability in Michelangelo
AI/ML Infra Meetup | ML explainability in Michelangelo
 
OpenChain @ LF Japan Executive Briefing - May 2024
OpenChain @ LF Japan Executive Briefing - May 2024OpenChain @ LF Japan Executive Briefing - May 2024
OpenChain @ LF Japan Executive Briefing - May 2024
 
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product UpdatesGraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
 
Advanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should KnowAdvanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should Know
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
 
A Guideline to Zendesk to Re:amaze Data Migration
A Guideline to Zendesk to Re:amaze Data MigrationA Guideline to Zendesk to Re:amaze Data Migration
A Guideline to Zendesk to Re:amaze Data Migration
 
5 Reasons Driving Warehouse Management Systems Demand
5 Reasons Driving Warehouse Management Systems Demand5 Reasons Driving Warehouse Management Systems Demand
5 Reasons Driving Warehouse Management Systems Demand
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
 
INGKA DIGITAL: Linked Metadata by Design
INGKA DIGITAL: Linked Metadata by DesignINGKA DIGITAL: Linked Metadata by Design
INGKA DIGITAL: Linked Metadata by Design
 
Corporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMSCorporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMS
 
top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
 

Test Design with Action-based Testing Methodology - Ngo Hoang Minh

  • 1. Ngo Hoang Minh TEST DESIGN WITH ACTION- BASED TESTING METHODOLOGY
  • 2. Who is your speaker? 2 • Software testing company, around since 1994 • Testing and test automation services: – consultancy, training – test development and automation services – "test integrated" development services • Products: – TestArchitect™, TestArchitect for Visual Studio™ – integrating test development with test management and automation – based on modularized keyword-driven testing • LogiGear Magazine: – themed issues, non-commercial LogiGear Corporation  Background in computer science, management  Since 2009 focusing on automated testing  keywords, agile testing Ngo Hoang Minh
  • 3. 3 Test Design With Action-Based
  • 4. 4 • Introduction • Action Based Testing, Test Modules • Success factors of test design (for automation) • Test case design • Action design • Final Agenda
  • 6. Testing Under Pressure 6 specification development test DEADLINE
  • 7. Testing Under Pressure – "Shift Left" 7 specification development test DEADLINE Develop tests in time: • Test design • Auditing, acceptance • Preparations • Automation
  • 9. Risks of keyword and scenario approaches 9 • Often seen as silver bullet, complications are underestimated – often treated as a technical "trick" – testers can get squeezed and marginalized • developers and users dictating tests • automation engineers dictating actions – testers can end up with an automation responsibility, thus becoming pseudo programmers • The method needs understanding and experience to be successful – pitfalls are many, and can have a negative effect on the outcome • Lack of method and structure can risk manageability – maintainability not as good as hoped – results can be disappointing, approach will be blamed
  • 10. Action Based Testing (ABT) 10 • Uses the keyword based "actions" as basis for a method – Covers test management, test development and automation – With a large focus on test design as the main driver for automation success – Method is specific, but concepts are generic • The central product in ABT is the "Test Module", not the test case – Like chapters in a book • test cases are part of the test modules, – Test development is seen as having both analytical and creative aspects – Developed as spread sheets, external from the automation – Each test module is a separate (mini) project, each test module can involve different stake holders
  • 11. Test Module 11 Test Module Initial - setup Objectives Test cases Final - cleanup
  • 12. Test Modules versus Test Cases 12 • The test module is a bigger unit in the test design – Easier to identify – A chapter rather than a paragraph • Better flow of execution – Each test case can set up for the next one – Keep test modules independent, test cases can be dependent • Test cases become creative output, rather than stifling input – Avoids having to define all test cases at once early in the process • Clear scope helps to identify cases, actions and checks
  • 14. Why Better Test Design? 14 • Better test design can improve quality of test – Many tests are often quite "mechanical" now, no surprises – One to one related to specifications, user stories or requirements, which often is ok, but lacks aggression – No combinations, no unexpected situations, lame and boring – Such tests have a hard time finding (interesting) bugs • Better test design can give (much) better automation – Unneeded details are left out of tests – Avoiding "over checking“ – Limit the impact of system changes on tests, making such impact more manageable
  • 15. The Three “Holy Grails” of Test Design 15 • Metaphor to depict three main steps in test design • Using "grail" to illustrate that there is no single perfect solution, but that it matters to pay attention Organization of tests into test modules Right approach for each test module Proper level of detail in the test specification
  • 17. What's the trick... 17 • Have or acquire facilities to store and organize your content • Select your stuff • Decide where to put what – assign and label the shelves • Put it there • If the organization is not sufficient anymore, add to it or change it
  • 18. Properties of a good Breakdown 18  Reflects the level of tests  Well differentiated and clear in scope  Balanced in size and amount  Modules mutually independent  Fitting the priorities and planning of the project
  • 19. Breakdown Criteria 19 • Common Criteria – Functionality (customers, finances, management information, UI, ...) – Architecture of the system under test (client, server, protocol, sub systems, components, modules, ...) – Kind of test (navigation flow, negative tests, response time, ...) • Additional Criteria – Stakeholders (like "Accounting", "Compliance", "HR", ...) – Complexity of the test (put complex tests in separate modules) – Execution aspects (special hardware, multi-station, ...) – Project planning (availability of information, timelines, sprints, ...) – Risks involved (extra test modules for high risk areas) – Ambition level (smoke test, regression, aggressive, …)
  • 20. Approach 1: Workshop 20 • Gather a meeting with relevant participants – test developers – domain experts – automation engineer (focus on efficiency of automation) – experienced moderator – also consider: developers, managers • If necessary, provide training of participants before the discussion • I prefer this approach, in particular to start off
  • 21. Approach 2: Design and Feedback 21 • One or two experienced test designers create a first draft • The draft is delivered/discussed to relevant parties • Ask the parties to verify: 1. Structure: does it make sense 2. Completeness: are all relevant areas covered • Based on feedback, further modify the design
  • 23. Grail 2: Approach per Test Module 23  When to develop: do we have enough information?  When to execute: make sure lower level stuff working first Plan the test module:  Do an intake: understand what is needed and devise an approach  Analyze requirements, formulate "test objectives", create tests Process :  See the test development as a "learning process", about the business domain, the application structure, the interaction, etc  Talk about your tests, make them strong Exploratory approach:  Users, subject matter experts, developers, auditors, etc Identify stakeholders and their involvement:  Users, subject matter experts, developers, auditors, etc Identify stakeholders and their involvement:
  • 24. Clarify your objectives with your tests . . . 24 requirement, specification, … test case requirement, specification, … test objective test case direct relation indirect relation via a test objective Linking through test objectives can help easier traceability: ... TO-3.51 The exit date must be after the entry date ... test objective TO-3.51 name entry date exit date enter employment Bill Goodfellow 2016-10-02 2016-10-01 check error message The exit date must be after the entry date.
  • 25. Test Objectives 25 • Keep test objectives short and simple • Focus on what to test, not how • Split longer texts into atomic sentences • Typically test objectives will be like: – cause and effect ("clicking clear clears all fields") – condition and effect ("if all fields filled, 'ok' is enabled")
  • 26. Eye on the ball, Scope 26 • Always know the scope of the test module • The scope should be unambiguous • The scope determines many things: – what the test objectives are – which test cases to expect – what level of actions to use – what the checks are about and which events should generate a warning or error (if a “lower” functionality is wrong)
  • 27. Use of "Anti-patterns" 27 • Informal way to classify typical test design problems • Use with care, can come across offensive • The point of view in the following list is automation: test design choices that can be counter-productive to automation • However, lack of good organization can also effect the quality of manual tests
  • 29. Grail 3: Specification Level, choosing actions 29 • Scope of the test determines the action level • As high level as appropriate, as little arguments as possible • Clear names for actions • Avoid "engineer" styles for names of actions and arguments – tests are not source code – like no spaces, uppercase, camel-case or underlines • Manage and document the Actions • Try to treat as a "by-product of test design"
  • 30. Low-level, high-level, mid-level actions 30 enter customer enter address fields enter select set . . .. . . "Low level": detailed interaction with the UI (or API) - generic, do not show any functional or business logic - examples: "click", "expand tree node", "select menu" "Mid level": common sequences at a more detailed application level - usually to wrap a form or dialog - for use in high level actions - greatly enhance maintainability - example: "enter address fields" "High level": a business domain operation or check on the application under test hide the interaction examples: "enter customer", "rent car", "check balance"
  • 31. Use the right level actions 31 Low level of UI interaction detail makes sense only with the module scope is to test the UI window tree tree item path click tree item main projects /Projects/Drill Assembly window list item check list item exists main tasks Plan of Approach Better to have a business level action and hide the details in an action definition: But do show details when it matters. The example below is too high level, requires drill down into action definition to understand what is tested.
  • 33. Takeaways 33 • Test design is a major contributor to automation success, often more than technical prowess • Domain language approaches like Actions and BDD allow for efficient communication and driving of automation • Test modules can help organize the tests, and focus their scopes • Focusing tests, checks and actions on a clear and differentiated scope will make for better tests, but also better automation
  • 34. © 2014 HCMC Software Testing Club THANK YOU