janet gregory presents current testing challenges with softtest ireland
DESCRIPTION
Visit www.softtest.ie for more information about Irish Software Testing.TRANSCRIPT
Janet Gregory, DragonFire Inc. Copyright 2012
September 2012 Belfast & Dublin
Copyright 2012 DragonFire Inc.
First agile team – 2000
Currently – coaching, testing
Book – Agile Testing; January 2009
2
Copyright 2012 DragonFire Inc.
• challenges
• testing activities
• automation ◦ the pyramid
◦ where it falls apart
• collaborative solutions
3
Copyright 2012 DragonFire Inc.
• mixed messages by thought leaders
• technology
• distributed teams
• organization culture
4
Testing activities
push the tests lower
Automate at the feature
level
Automate at the story
level
Automate at the task
level
Copyright 2012 DragonFire Inc.
Tests / Examples
Test Method / Fixture
Developer Code
passes to
calls
API test structure
Copyright 2012 DragonFire Inc.
boolean TestLogIn (userName, password, expected result) call LogIn (userName, password) compare (actual result, expected result) if true, return pass else return fail
end
User Name Password Expected result comments JanetGregory Password Access system as JanetGregory Valid combo saved Janet Gregory Password Error Space in user name
TestLogIn
boolean LogIn (name,pwd) code stuff ……….. if logged in, return true else return false end
test / examples
test method / fixture
Developer code
Copyright 2012 DragonFire Inc.
• enables testers / business to define tests
• test code can be in programming language
• programmers can run tests as they code
• testers can ask programmers for help
• takes time from ‘coding’ production code
• tests are usually through the UI
• programmers aren’t usually willing to help
• tests are implemented after the code is written
• testers create and implement all tests
9
Copyright 2012 DragonFire Inc.
• less abstraction between layers ◦ presentation vs. business layer
• more logic in the GUI layer
• where is the separation in tests?
• who does what?
10
• JavaScript • Flash • Flex • Ajax • Cross-browser
compatibility • Mobile
Copyright 2012 DragonFire Inc.
So, if we can’t test all (most) functionality at the API layer ...
Any stories to share?
12
Copyright 2012 DragonFire Inc.
• ATDD (acceptance test driven development) through the GUI ◦ Jasmine: BDD framework to test JavaScript
◦ Sebium: Fit and Selenium combined (Cirilo Wortel)
◦ Selenium: possible, but harder
◦ Ruby / Watir: possible, but harder
• Unit tests ◦ jQuery
13
two big questions ....
Do testers need to know how to code?
14
Can programmers
do all the testing?
• system architecture ◦ high level (context)
◦ component level
15 Thx to Lynn McKee for the term technical awareness
Copyright 2012 DragonFire Inc.
for example,
• in JavaScript, there is a small, but important issue with the parseInt function, used to transform strings to integers.
• the issue arises when we create a Date object from a 'yyyy-mm-dd' string.
Could your testers and programmers have a
conversation about this?
16
Copyright 2012 DragonFire Inc. 17
Brian Marick
Copyright 2012 DragonFire Inc.
• slicing stories
• ATDD (acceptance test driven development)
• sharing technical details
• teaching testing skills
• learning test patterns
• learning / teaching design techniques
• creating test harnesses, mocks, stubs
19
Copyright 2012 DragonFire Inc. 20
Copyright 2012 DragonFire Inc.
Instead of saying NO,
or being the gatekeeper
Be the information provider so business can make the decisions
Questions?
21
Copyright 2012 DragonFire Inc.
• www.lisacrispin.com
• http://gojko.net/2010/10/05/rethinking-user-interface-test-automation/
• http://net.tutsplus.com/tutorials/javascript-ajax/testing-your-javascript-with-jasmine
• http://www.software-testing.com.au/blog/2011/01/25/test-automation-styles-and-alternatives-to-the-page-object-pattern/
• www.qualityperspectives.ca
22
Copyright 2012 DragonFire Inc.
Contact Information
[email protected] www.janetgregory.ca
twitter: @janetgregoryca
[email protected] www.lisacrispin.com twitter: @lisacrispin
www.agiletester.ca