Test Automation Strategy: Developing A
Test Automation Strategy: Developing A
Test Automation Strategy: Developing A
risk
deliverables, release, schedule
money
lost revenue, market, contractual
why regression test?
a project without
thorough and continuous regression testing
is like a road trip
where you do not look out the window
until the end of the trip
why automate? (vs. manual)
why automate? (vs. manual)
Money Time
why automate? (vs. manual)
Money
why automate? (vs. manual)
Time
automation strategy
what to consider...
business needs
return on investment
technology stacks
automation strategy
development process and lifecycle...
devops or operations
where to automate?
who is going to use the tests?
developers, maybe...
depends
where to automate?
“Its essential point is that you should
have many more low-level unit tests than
high level end-to-end tests running
through a GUI.” Martin Fowler
https://msdn.microsoft.com
where to automate?
XP
UNIT LEVEL
INTEGRATION LEVEL test driven development
ACCEPTANCE LEVEL
BDD
where to automate?
acceptance tests
only if the business is engaged and
going to use them
ACCEPTANCE LEVEL
BDD
where to automate?
what to consider...
DRY
where to automate?
what to consider...
Gherkin/Cucumber JUnit
Robot Framework
Jasmine
Selenium Webdriver
Spock/Geb
TestNG
which automation framework to use?
what to consider...
and...
grids...
integration...
reporting...
teh sexy
gherkin/cucumber/ruby
gherkin/cucumber
generally ruby based...
Login Is Successful
Page Should Contain Welcome
*** Testcases ***
Login Should Succeed When the Correct Username and
Password are Entered
Given I Enter Username AUser
And I Enter Password TestPass
When I Click the Login Button
Then Login is Successful
tabular/data driven
import geb.spock.GebSpec
static content = {
highlights { $("#sidebar .sidemenu").module(HighlightsModule) }
sectionTitles { $("#main h1")*.text() }
}
}
KS
E WOR
RA M
F
other options...
other options...