Agile test tools
Upcoming SlideShare
Loading in...5
×
 

Agile test tools

on

  • 5,779 views

Presentation made for the Luxembourg Testing Board on 2011-05-23

Presentation made for the Luxembourg Testing Board on 2011-05-23

Statistics

Views

Total Views
5,779
Views on SlideShare
5,428
Embed Views
351

Actions

Likes
1
Downloads
130
Comments
0

3 Embeds 351

http://blog.agilepartner.net 212
http://agile-and-testing.chriss-baumann.de 138
http://theserver2 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Agile test tools Agile test tools Presentation Transcript

  • Agile Test Toolsan introduction
    LTB Talk, 2011-05-23
  • Speaker
    23 May 2011
    LTB – Agile Testing Tools
    2
    Agile Practitioner
    & Software tester
  • Index
    Intention
    Idea/ Background of "agile test tools"
    Definitions & Explanations
    Tools
    (Dis)advantages
    Essence
    Links & Books 
    Questions / Discussions
    23 May 2011
    LTB – Agile Testing Tools
    3
  • Intention
    The intention of this talk is to
    Present & explain (a selection of) agile test tools to the LU tester´s community
    Show how test tools support the agile tester
     
    The intention is not to 
    give a complete overview of agile testing methodologies and tools.
    23 May 2011
    LTB – Agile Testing Tools
    4
  • The classic approach
    one phase happens after the other
    testing (test execution) by QA-people is mainly done in only one phase
    23 May 2011
    LTB – Agile Testing Tools
    5
  • Agile/ Scrum
    Roles in Scrum: Product Owner, Team, Scrum Master
    Testing supports during the whole process, therefore test tools need to handle this
    23 May 2011
    LTB – Agile Testing Tools
    6
  • Agile/ Scrum
    Special roles (developer, tester, architect, DB admin) aren´t bound to specific people, different people are sharing roles, therefor also testing is a role, that can be filled by everybody
    more people work with the same tool
    tools need to support more aspects then "just" testing
    23 May 2011
    LTB – Agile Testing Tools
    7
  • Classic vs. Agile
    “Agile teams have particular needs for automated tools that are not well served by traditional record-and-playback GUI drivers.  As requirements specifications, functional tests must be readable: clear, succinct, and expressed in the language of the business domain. As an automated safety net, the tests must be maintainable: built with reusable domain specific testing language components, easy to change as the requirements change.”
    http://tech.groups.yahoo.com/group/aa-ftt
    23 May 2011
    LTB – Agile Testing Tools
    8
  • Classic vs. Agile
    Not a contradiction to "classical approach“
     
    test early insoftwarelifecycle 
    reduces cost
    23 May 2011
    LTB – Agile Testing Tools
    9
  • Characteristics of Agile Test Tools
    Having tests documented as manual tests and scripted tests is double work
    Waste! 
        
    Use one tool for
    requirements,
    tests,
    automated tests &
    test results
    23 May 2011
    LTB – Agile Testing Tools
    10
  • Definitions
    TDD - Test Driven Development
    write a (failing) test
    write code to make the test pass
    refactor
    mostly on unit test level
     
    Acceptance Test
    Test to determine if the requirements of a specification are met.
     
    ATDD - Acceptance TDD
    Implementation of a requirement is driven by a set of automated, executable acceptance tests.
    23 May 2011
    LTB – Agile Testing Tools
    11
  • TDD & ATDD
    23 May 2011
    LTB – Agile Testing Tools
    12
  • Definitions
    BDD - Behaviour Driven Development 
    Behaviour-driven development (BDD) is an evolution of test-driven development (TDD) and acceptance-test driven development, and is intended to make these practices more accessible and intuitive to newcomers and experts alike.
    It shifts the vocabulary from being test-based to behaviourbased,andpositions itself as a design philosophy.
    BDD "describes a cycle of interactions with well-defined outputs, resulting in the delivery of working, tested software."
    23 May 2011
    LTB – Agile Testing Tools
    13
  • Tools
    Two groups (borders are blurred)
    Requirements are described in DSL/ special syntax/ natural language and executed as tests through fixture code.
    Tools for executing tests
    23 May 2011
    LTB – Agile Testing Tools
    14
  • RSpec
    TDD        
    RSpecsupports in doing the TDD part of BDD, focusing on the documentation and design aspects of TDD. 
    http://relishapp.com/rspec
    23 May 2011
    LTB – Agile Testing Tools
    15
  • RSpec
    23 May 2011
    LTB – Agile Testing Tools
    16
  • FIT
    FIT is an acceptance testing framework originally developed for Java by Ward Cunningham. One of the central ideas of FIT was to promote collaboration and allow customers and business analysts to write and verify tests. FIT makes it easy to run tests, but does not provide a way to create them. The original idea was to write tests in Word, Excel, or any tool that can output HTML. 
    http://www.fitnesse.info/fitnesse
    23 May 2011
    LTB – Agile Testing Tools
    17
  • FitNesse
    Automated Acceptance Testing 
    "web-based collaboration tool for software acceptance testing" (http://www.fitnesse.info/fitnesse) 
    "is a web wiki front-end to FIT" 
    Tests are described as tables in a wiki 
    http://fitnesse.org/, http://www.fitnesse.info
    23 May 2011
    LTB – Agile Testing Tools
    18
  • FitNesse
    23 May 2011
    LTB – Agile Testing Tools
    19
  • Cucumber
    BDD        
    "Cucumberis a toolthatexecutes plain-textfunctional descriptions as automated tests." (https://github.com/aslakhellesoy/cucumber/wiki/)
    Uses a business-readable DSL
    SUTs in Ruby, Java, .NET, Python, multiple webtestingframeworks... 
    integrates in CI-environments          
    http://cukes.info/
    23 May 2011
    LTB – Agile Testing Tools
    20
  • Cucumber
    Describe behaviour in plain text
    Write a step definition in Ruby
    Run and watch it fail
    Write code to make the step pass
    Run again and see the step pass
    Repeat 2-5 until green like a cuke
    23 May 2011
    LTB – Agile Testing Tools
    21
  • Cucumber
    23 May 2011
    LTB – Agile Testing Tools
    22
  • Robot Framework
    Acceptance testing and ATDD        
    Keyword-/data-/BDD-driven 
    "Robot Framework is a generic test automation framework for acceptance testing and acceptance test-driven development." 
    https://code.google.com/p/robotframework/
    23 May 2011
    LTB – Agile Testing Tools
    23
  • Robot Framework
    23 May 2011
    LTB – Agile Testing Tools
    24
  • Robot Framework
    23 May 2011
    LTB – Agile Testing Tools
    25
  • Selenium
    "Selenium is a suite of tools to automate web app testing across many platforms.“
     
    "Selenium...
    runs in many browsers and operating systems
    can be controlled by many programming languages and testing frameworks." 
    http://seleniumhq.org/
    23 May 2011
    LTB – Agile Testing Tools
    26
  • Selenium
    23 May 2011
    LTB – Agile Testing Tools
    27
  • Selenium
    23 May 2011
    LTB – Agile Testing Tools
    28
  • Others
    Watir (and others)
    xUnit
    ...
    23 May 2011
    LTB – Agile Testing Tools
    29
  • Advantages
    Involving tests early in the software lifecycle process 
    No wasted efforts for documenting requirements, test cases & automated tests 
    Creating (automated) regression tests along the way
    Easy to collaborate/ integrate customers Business Experts, POs/PMs
    ...
    23 May 2011
    LTB – Agile Testing Tools
    30
  • Hurdles to take
    New tool to learn
    Also non technical people need to learn a tool language/ syntax
    Tester need technical skills
    All of the discussed tools should be integrated into the CI system
    Not everything can be tested automatically
    Manual testing is still needed
    23 May 2011
    LTB – Agile Testing Tools
    31
  • Links & Books
    http://code.google.com/p/robotframework/http://www.concordion.org/http://cukes.info/http://en.wikipedia.org/wiki/Behavior_Driven_Developmenthttp://www.fitnesse.info/fitnessehttp://fitnesse.org/http://relishapp.com/rspechttp://seleniumhq.org/http://skillsmatter.com/podcast/java-jee/how-to-sell-bdd-to-the-businesshttp://www.slideshare.net/tcmak/atdd-in-practicehttp://tech.groups.yahoo.com/group/aa-ftt/http://testobsessed.com/2008/12/08/acceptance-test-driven-development-atdd-an-overview/
    23 May 2011
    LTB – Agile Testing Tools
    32
  • Ressources
    Agile Partner
    Corporate: www.agilepartner.net
    Team Blog: blog.agilepartner.net
    Personal Blog: agile-and-testing.chriss-baumann.de
    Agile Interest Group Luxembourgwww.aiglu.org
    23 May 2011
    LTB – Agile Testing Tools
    33
  • CONTACTS
    Thank You
    23 May 2011
    LTB – Agile Testing Tools
    34