SlideShare une entreprise Scribd logo
1  sur  52
Agile testing Agile Mëtteg – 15 July 2010
Agile Mëtteg in 2010 Complete Agile Mëtteg calendar on www.agilepartner.net/agility_seminars.html 15 July 2010 Agile Mëtteg - Agile Testing 2
OBJECTIVES & AGENDA Objectives This session will focus on a Agile Testing and provide you with practical examples and techniques to help your team understand what is behind this approach. Agenda Introduction of Agile Partner The attendees What is agile testing? And why? And how?  Unit testing  Behaviour Driven Development  Test Driven Development  Acceptance testing  Q&A  15 July 2010 Agile Mëtteg - Agile Testing 3
AGILE PARTNER SERVICES 15 July 2010 Agile Mëtteg - Agile testing 4 IS users Services 1 Custom Software Development & Maintenance Our core business to answer customer needs IS services Thanks to our expertise we can support IT team to reach their productivity & quality objectives (Assessment, Coaching, Support, Training, Resource delegation…) IS Solutions Take benefit from commercial or Open Source platform to answer as quick as possible to specific needs IS users services We can support Product & Services owners to work closely with the IT team (Assessment, Coaching, Support, Training, Resource delegation…) 4 Software Development & SoftwareMaintenance 2 ISSolutions IS Services Agility Agility 3 1 2 3 4 Agility
NEXT TRAININGS & CERTIFICATIONS 15 July 2010 Agile Mëtteg - Agile testing 5 -15% Complete calendar on: http://www.agilepartner.net/training/training_calendar.html
Let’s get acquainted July 15th, 2010 Agile Mëtteg – Agile Testing 6
PRESENTATION OF THE ATTENDEES Who are you ? What is your role ? What do you know about agility ? What are your expectations ? July 15th, 2010 Agile Mëtteg – Agile Testing 7
AGENDA Agenda What is agile testing? And why? And how? Unit testing Test Driven Development Acceptance testing Behaviour Driven Development 15 July 2010 Agile Mëtteg - Agile testing 8
WHAT IS SOFTWARE TESTING? Definition: Software testing is an investigation conducted to provide stakeholders with information about the quality of the product or service under test. (Wikipedia) 15 July 2010 Agile Mëtteg - Agile testing 9
WHAT IS SOFTWARE TESTING? Definition: Software testing is a way to measure the quality of the product using tests. (Stephan Zimmer & Eric Ferrot) 15 July 2010 Agile Mëtteg - Agile testing 10
MEASURING QUALITY Measuring quality using tests: tests to find defects functional / non-functional testing a LOT of kinds of tests 15 July 2010 Agile Mëtteg - Agile testing 11
15 July 2010 Agile Mëtteg - Agile testing 12 SO WHAT IS AGILE TESTING ?… AND WHY?… AND HOW?
Traditional / Waterfall approach Testing is done after the development WHAT IS AGILE TESTING? 15 July 2010 Agile Mëtteg - Agile testing 13
Agile approach Testing is part of the development process WHAT IS AGILE TESTING? 15 July 2010 Agile Mëtteg - Agile testing 14 Iteration 1 Iteration 2 Iteration n No specific order
WHAT IS AGILE TESTING? 15 July 2010 Agile Mëtteg - Agile testing 15 Programmer Traditional / Waterfall approach Testing is done after the development Clear separation of roles Domain Expert Tester
Agile approach Testing is part of the development process A whole team WHAT IS AGILE TESTING? 15 July 2010 Agile Mëtteg - Agile testing 16 Programmer Programmer Domain Expert Tester Tester
Agile testing places an increased portion of the testing in the hands of the developers Wait… WHAT?!?! I’m a programmer not a tester It’s trivial I don’tneed a test I don’t have time for testing My code isverydifficult to test WHAT IS AGILE TESTING? 15 July 2010 Agile Mëtteg - Agile testing 17
WHY AGILE TESTING? WHY should developers write tests? Fear / Confidence Do you dare to change the code? 	 Tests = safety net It places developers as users 	 Better usability It makes the code testable 	 Better design 15 July 2010 Agile Mëtteg - Agile testing 18
WHY AGILE TESTING? A better design “How good the design is doesn't matter near as much as whether the design is getting better or worse.  If it is getting better, day by day, I can live with it forever.  If it is getting worse, I will die.” (Kent Beck ) 15 July 2010 Agile Mëtteg - Agile testing 19
AGILE TESTING… HOW? Agile testing… HOW? Unit testing Test Driven Development Acceptance testing Behaviour Driven Development 15 July 2010 Agile Mëtteg - Agile testing 20
BUT FIRST… 15 July 2010 Agile Mëtteg - Agile testing 21
LET US INTRODUCE YOU TO… 15 July 2010 Agile Mëtteg - Agile testing 22 TIME MASTER TIM!
AGILE TESTING… HOW? DINO LEGS A real project A new feature:  „The Crystal Quest“ 15 July 2010 Agile Mëtteg - Agile testing 23 http://dinolegs.blogspot.com/
UNIT TESTING 15 July 2010 Agile Mëtteg - Agile testing 24
UNIT TESTING Definitions Unit :  	Smallest testable part of an application Unit test :  	A method to test a unit 15 July 2010 Agile Mëtteg - Agile testing 25
UNIT TESTING Some bad things about unit tests: Expensive to write and expensive to maintain You can test too much You can test the wrong things Possibility to get false sense of security when all tests pass No integration tests 15 July 2010 Agile Mëtteg - Agile testing 26
UNIT TESTING Why write unit tests? More confidence in the code Avoid regression Tests themselves are documentation Encourages better software design: minimal interfaces and modularity			 15 July 2010 Agile Mëtteg - Agile testing 27
UNIT TESTING The „3A“ pattern Arrange Act Assert 15 July 2010 Agile Mëtteg - Agile testing 28
UNIT TESTING F.I.R.S.T. Fast Independent Repeatable Self-Validating Timely [Clean Code – Robert C. Martin] 15 July 2010 Agile Mëtteg - Agile testing 29
UNIT TESTING „The act of writing a unit test is more an act of design than of verification“ (Robert C. Martin) 15 July 2010 Agile Mëtteg - Agile testing 30
UNIT TESTING A lot of existing unit testing… 	xUnit (NUnit, Junit, csUnit, …), MSTest, Pex, Visual Studio UTF, etc. …and mocking frameworks 	Moq, Rhino Mocks, Moles, TypeMock, JMock, etc. 15 July 2010 Agile Mëtteg - Agile testing 31
TEST DRIVEN DEVELOPMENT (TDD) 15 July 2010 Agile Mëtteg - Agile testing 32
TEST DRIVEN DEVELOPMENT (TDD) 15 July 2010 Agile Mëtteg - Agile testing 33 Unit Test What is TDD?  Difference to unit testing Write the unit test Code FIRST!
TEST DRIVEN DEVELOPMENT (TDD) What is TDD?  Difference to unit testing Write the unit test FIRST! « Red – Green – Refactor » pattern 15 July 2010 Agile Mëtteg - Agile testing 34
TEST DRIVEN DEVELOPMENT (TDD) Red – Green – Refactor Make it failwrite the test first Make it workwrite the simplest implementation Make it betterrefactor without changing the behavior 15 July 2010 Agile Mëtteg - Agile testing 35
TEST DRIVEN DESIGN (TDD) TDD is not only about testing Also called Test Driven Design TDD is a methodology that helps creating a good design when developing code.  15 July 2010 Agile Mëtteg - Agile testing 36
TEST DRIVEN DESIGN (TDD) TDD is not only about testing Also called Test Driven Design TDD consequences YAGNI DRY Law of Demeter Single responsibility principle Interface segregation principle Inversion of control 15 July 2010 Agile Mëtteg - Agile testing 37 GOOD DESIGN !
TEST DRIVEN DEVELOPMENT (TDD) DEMO 15 July 2010 Agile Mëtteg - Agile testing 38
ACCEPTANCE TESTING 15 July 2010 Agile Mëtteg - Agile testing 39
ACCEPTANCE TESTING Unit testing tells us that the code is meeting the programmer‘s expectations Unit testing is essential but not sufficient Acceptance tests are specifications for the desired behaviour and functionality of a system. Customer oriented About the what and not the how Usually black box system tests Integration tests character 15 July 2010 Agile Mëtteg - Agile testing 40
ACCEPTANCE TESTING Implementing acceptance tests  means automation Examples of automation tools: Framework for Integrated Test (Fit) is an open-source tool for automated acceptance test Fitnesse is a webserver, a wiki and an automated testing tool based on Fit 15 July 2010 Agile Mëtteg - Agile testing 41
ACCEPTANCE TESTING DEMO 15 July 2010 Agile Mëtteg - Agile testing 42
BEHAVIOUR DRIVEN DEVELOPMENT (BDD) 15 July 2010 Agile Mëtteg - Agile testing 43
BEHAVIOUR DRIVEN DEVELOPMENT Behaviour Driven Development (BDD) Evolution of TDD introduced by Dan North Using terminology focused on the behavioural aspects of the system rather than testing  Unit ≠ behaviour 	 Focus on why the code should be created  Business value  >  Code  Specification  >  Test 15 July 2010 Agile Mëtteg - Agile testing 44
BEHAVIOUR DRIVEN DEVELOPMENT Outside-in methodology 	 from the known to the unknown Helps the developer to think YAGNI 	 Leads to better design 	 BDD = Behaviour Driven Design Don‘t forget about the roots (TDD) 	 Red – Green – Refactor 15 July 2010 Agile Mëtteg - Agile testing 45
BEHAVIOUR DRIVEN DEVELOPMENT Programmer Ubiquitous language based on the business domain Common vocabulary between participants Minimizes translation Avoids miscommunication Makes it easier to validate early Domain Expert Tester 15 July 2010 Agile Mëtteg - Agile testing 46
BEHAVIOUR DRIVEN DEVELOPMENT Story framework Each feature is captured in a „story“, which defines the scope of the feature along with its acceptance criteria Feature Feature: Title As a [role] I want [feature] so that [benefit] Feature: Crystal quest As a player I want to collect time crystals so that I am able to complete the crystal quest 15 July 2010 Agile Mëtteg - Agile testing 47
BEHAVIOUR DRIVEN DEVELOPMENT Scenario / Acceptance criteria Scenario:Title Given some initial context, And some additional context, When an event occurs, Then ensure some outcomes Scenario 1:Tim loses a crystal Given a Tim is on screen And a crystal is on screen, When Tim dies, Then the crystal disappears And Tim‘s player score is decreased by 20 Scenario 2:Tim collects a crystal Given Tim is on screen And a crystal is on screen, When Tim touches the crystal, Then the crystal disappears And a nice music is played And Tim‘s player score is increased by 100 15 July 2010 Agile Mëtteg - Agile testing 48
BEHAVIOUR DRIVEN DEVELOPMENT Several existing tools for automation JBehave, NBehave, JSpec, NSpec, CppSpec, PHPSpec, SpecFlow, RSpec, Cucumber, … 	 Executable specification 	 Quick feedback and regression testing 	 Requirements are tests 	 Tests are documentation 15 July 2010 Agile Mëtteg - Agile testing 49
BEHAVIOUR DRIVEN DEVELOPMENT DEMO 15 July 2010 Agile Mëtteg - Agile testing 50
SUMMARY 15 July 2010 Agile Mëtteg - Agile testing 51
SUMMARY Some things to remember about Agile Testing: Testing is part of the development process Whole-team approach: roles not that strictly separated as in traditional approach Building a testable architecture leads to a better design ... and don‘t forget! Setup a working environment 15 July 2010 Agile Mëtteg - Agile testing 52

Contenu connexe

Tendances

Agile project kick off from the trenches
Agile project kick off from the trenchesAgile project kick off from the trenches
Agile project kick off from the trenchesGeorge Stamos
 
The Business Analyst’s Critical Role in Agile Projects
The Business Analyst’s Critical Role in Agile ProjectsThe Business Analyst’s Critical Role in Agile Projects
The Business Analyst’s Critical Role in Agile ProjectsTechWell
 
HOT TOPIC REPORT DIVYA
HOT TOPIC REPORT DIVYAHOT TOPIC REPORT DIVYA
HOT TOPIC REPORT DIVYADivya Tadi
 
Scrum Master Interview Questions SlideShare
Scrum Master Interview Questions SlideShareScrum Master Interview Questions SlideShare
Scrum Master Interview Questions SlideShareInvensis Learning
 
PMI-ACP Lesson 12 Knowledge and Skills Nugget 2
PMI-ACP Lesson 12 Knowledge and Skills Nugget 2PMI-ACP Lesson 12 Knowledge and Skills Nugget 2
PMI-ACP Lesson 12 Knowledge and Skills Nugget 2Thanh Nguyen
 
Agile Fundamentals
Agile FundamentalsAgile Fundamentals
Agile FundamentalsGraham Dick
 
Essential SAFe and Launching your first Agile Release Train
Essential SAFe and Launching your first Agile Release TrainEssential SAFe and Launching your first Agile Release Train
Essential SAFe and Launching your first Agile Release TrainCprime
 
Agile Software Development, Overview
Agile Software Development, OverviewAgile Software Development, Overview
Agile Software Development, OverviewBayard Randel
 
Agile101 - What Agile Is and What Agile Is Not
Agile101 - What Agile Is and What Agile Is NotAgile101 - What Agile Is and What Agile Is Not
Agile101 - What Agile Is and What Agile Is NotDerek Huether
 
Software development with agile methodologies
Software development with agile methodologiesSoftware development with agile methodologies
Software development with agile methodologiesElmozamil Elamir
 
Post agile confessions
Post agile confessionsPost agile confessions
Post agile confessionsStojan Peshov
 
Agile Software Development at UPT DEGI | Nov, 2015
Agile Software Development at UPT DEGI | Nov, 2015Agile Software Development at UPT DEGI | Nov, 2015
Agile Software Development at UPT DEGI | Nov, 2015Eduardo Ribeiro
 
Product Owner Super Powers
Product Owner Super PowersProduct Owner Super Powers
Product Owner Super PowersStefan Haas
 
The Role of a BA on a Scrum Team IIBA Presentation 2010
The Role of a BA on a Scrum Team IIBA Presentation 2010The Role of a BA on a Scrum Team IIBA Presentation 2010
The Role of a BA on a Scrum Team IIBA Presentation 2010scrummasternz
 
Scaling agile Principles and Practices
Scaling agile Principles and PracticesScaling agile Principles and Practices
Scaling agile Principles and PracticesJosef Scherer
 
Demystifying the Role of Product Owner
Demystifying the Role of Product OwnerDemystifying the Role of Product Owner
Demystifying the Role of Product OwnerTechWell
 
Scaling Agile and Scrum (cPrime/Angela Johnson)
Scaling Agile and Scrum (cPrime/Angela Johnson)Scaling Agile and Scrum (cPrime/Angela Johnson)
Scaling Agile and Scrum (cPrime/Angela Johnson)Cprime
 

Tendances (20)

Agile project kick off from the trenches
Agile project kick off from the trenchesAgile project kick off from the trenches
Agile project kick off from the trenches
 
The Business Analyst’s Critical Role in Agile Projects
The Business Analyst’s Critical Role in Agile ProjectsThe Business Analyst’s Critical Role in Agile Projects
The Business Analyst’s Critical Role in Agile Projects
 
HOT TOPIC REPORT DIVYA
HOT TOPIC REPORT DIVYAHOT TOPIC REPORT DIVYA
HOT TOPIC REPORT DIVYA
 
Scrum Master Interview Questions SlideShare
Scrum Master Interview Questions SlideShareScrum Master Interview Questions SlideShare
Scrum Master Interview Questions SlideShare
 
PMI-ACP Lesson 12 Knowledge and Skills Nugget 2
PMI-ACP Lesson 12 Knowledge and Skills Nugget 2PMI-ACP Lesson 12 Knowledge and Skills Nugget 2
PMI-ACP Lesson 12 Knowledge and Skills Nugget 2
 
Agile Fundamentals
Agile FundamentalsAgile Fundamentals
Agile Fundamentals
 
Business Value Driven Portfolio Management
Business Value Driven Portfolio ManagementBusiness Value Driven Portfolio Management
Business Value Driven Portfolio Management
 
Essential SAFe and Launching your first Agile Release Train
Essential SAFe and Launching your first Agile Release TrainEssential SAFe and Launching your first Agile Release Train
Essential SAFe and Launching your first Agile Release Train
 
Agile Software Development, Overview
Agile Software Development, OverviewAgile Software Development, Overview
Agile Software Development, Overview
 
Agile101 - What Agile Is and What Agile Is Not
Agile101 - What Agile Is and What Agile Is NotAgile101 - What Agile Is and What Agile Is Not
Agile101 - What Agile Is and What Agile Is Not
 
Software development with agile methodologies
Software development with agile methodologiesSoftware development with agile methodologies
Software development with agile methodologies
 
Agile survival kit
Agile survival kitAgile survival kit
Agile survival kit
 
Post agile confessions
Post agile confessionsPost agile confessions
Post agile confessions
 
Agile Software Development at UPT DEGI | Nov, 2015
Agile Software Development at UPT DEGI | Nov, 2015Agile Software Development at UPT DEGI | Nov, 2015
Agile Software Development at UPT DEGI | Nov, 2015
 
Product Owner Super Powers
Product Owner Super PowersProduct Owner Super Powers
Product Owner Super Powers
 
The Role of a BA on a Scrum Team IIBA Presentation 2010
The Role of a BA on a Scrum Team IIBA Presentation 2010The Role of a BA on a Scrum Team IIBA Presentation 2010
The Role of a BA on a Scrum Team IIBA Presentation 2010
 
Scaling agile Principles and Practices
Scaling agile Principles and PracticesScaling agile Principles and Practices
Scaling agile Principles and Practices
 
Product Owner
Product OwnerProduct Owner
Product Owner
 
Demystifying the Role of Product Owner
Demystifying the Role of Product OwnerDemystifying the Role of Product Owner
Demystifying the Role of Product Owner
 
Scaling Agile and Scrum (cPrime/Angela Johnson)
Scaling Agile and Scrum (cPrime/Angela Johnson)Scaling Agile and Scrum (cPrime/Angela Johnson)
Scaling Agile and Scrum (cPrime/Angela Johnson)
 

En vedette

Agile Mëtteg series session 7
Agile Mëtteg series session 7Agile Mëtteg series session 7
Agile Mëtteg series session 7Agile Partner S.A.
 
Оформление коммерческого предложения
Оформление коммерческого предложенияОформление коммерческого предложения
Оформление коммерческого предложенияTimur Aslanov
 
Nouvelles expériences de lecture
Nouvelles expériences de lectureNouvelles expériences de lecture
Nouvelles expériences de lectureNathalie Caclard
 
Web usability et e-Commerce
Web usability et e-CommerceWeb usability et e-Commerce
Web usability et e-CommerceTechnofutur TIC
 
How to stay positive in a tough working environment pdf
How to stay positive in a tough working environment pdfHow to stay positive in a tough working environment pdf
How to stay positive in a tough working environment pdfAditya Butail
 
ALM and DevOps in the health industry
ALM and DevOps in the health industryALM and DevOps in the health industry
ALM and DevOps in the health industryAgile Partner S.A.
 
PEC PA&Utilities 2016 | Il caso del Portogallo
PEC PA&Utilities 2016 |  Il caso del PortogalloPEC PA&Utilities 2016 |  Il caso del Portogallo
PEC PA&Utilities 2016 | Il caso del Portogalloi-Faber S.p.A.
 
SPD Casablanca 2016 - Keynote SharePoint in a changing world
SPD Casablanca 2016 - Keynote SharePoint in a changing worldSPD Casablanca 2016 - Keynote SharePoint in a changing world
SPD Casablanca 2016 - Keynote SharePoint in a changing worldPatrick Guimonet
 
How can you influence your Board to adopt good governance of project / change...
How can you influence your Board to adopt good governance of project / change...How can you influence your Board to adopt good governance of project / change...
How can you influence your Board to adopt good governance of project / change...Association for Project Management
 
Protéger vos données grâce à microsoft rms - Marocco SharePoint Days 2016
Protéger vos données grâce à microsoft rms - Marocco SharePoint Days 2016Protéger vos données grâce à microsoft rms - Marocco SharePoint Days 2016
Protéger vos données grâce à microsoft rms - Marocco SharePoint Days 2016Joris Faure
 

En vedette (12)

Agile Mëtteg series session 7
Agile Mëtteg series session 7Agile Mëtteg series session 7
Agile Mëtteg series session 7
 
Оформление коммерческого предложения
Оформление коммерческого предложенияОформление коммерческого предложения
Оформление коммерческого предложения
 
Nouvelles expériences de lecture
Nouvelles expériences de lectureNouvelles expériences de lecture
Nouvelles expériences de lecture
 
Web usability et e-Commerce
Web usability et e-CommerceWeb usability et e-Commerce
Web usability et e-Commerce
 
TibcoBE-Development
TibcoBE-DevelopmentTibcoBE-Development
TibcoBE-Development
 
How to stay positive in a tough working environment pdf
How to stay positive in a tough working environment pdfHow to stay positive in a tough working environment pdf
How to stay positive in a tough working environment pdf
 
ALM and DevOps in the health industry
ALM and DevOps in the health industryALM and DevOps in the health industry
ALM and DevOps in the health industry
 
PEC PA&Utilities 2016 | Il caso del Portogallo
PEC PA&Utilities 2016 |  Il caso del PortogalloPEC PA&Utilities 2016 |  Il caso del Portogallo
PEC PA&Utilities 2016 | Il caso del Portogallo
 
SPD Casablanca 2016 - Keynote SharePoint in a changing world
SPD Casablanca 2016 - Keynote SharePoint in a changing worldSPD Casablanca 2016 - Keynote SharePoint in a changing world
SPD Casablanca 2016 - Keynote SharePoint in a changing world
 
How can you influence your Board to adopt good governance of project / change...
How can you influence your Board to adopt good governance of project / change...How can you influence your Board to adopt good governance of project / change...
How can you influence your Board to adopt good governance of project / change...
 
Protéger vos données grâce à microsoft rms - Marocco SharePoint Days 2016
Protéger vos données grâce à microsoft rms - Marocco SharePoint Days 2016Protéger vos données grâce à microsoft rms - Marocco SharePoint Days 2016
Protéger vos données grâce à microsoft rms - Marocco SharePoint Days 2016
 
Melhore o seu linkedin!
Melhore o seu linkedin!Melhore o seu linkedin!
Melhore o seu linkedin!
 

Similaire à Agile Mëtteg series - Session 5

Sprinkle on Just Enough Process
Sprinkle on Just Enough ProcessSprinkle on Just Enough Process
Sprinkle on Just Enough ProcessTechWell
 
Agile metteg 9(agile tooling)-draft-v1.0
Agile metteg 9(agile tooling)-draft-v1.0Agile metteg 9(agile tooling)-draft-v1.0
Agile metteg 9(agile tooling)-draft-v1.0APjrousset
 
Campbell & Readman - TDD It's Not Tester Driven Development - EuroSTAR 2012
Campbell & Readman - TDD It's Not Tester Driven Development - EuroSTAR 2012Campbell & Readman - TDD It's Not Tester Driven Development - EuroSTAR 2012
Campbell & Readman - TDD It's Not Tester Driven Development - EuroSTAR 2012TEST Huddle
 
Agile2014 Report: As a Speaker and a Reporter of the latest Agile in the world
Agile2014 Report: As a Speaker and a Reporter of the latest Agile in the world  Agile2014 Report: As a Speaker and a Reporter of the latest Agile in the world
Agile2014 Report: As a Speaker and a Reporter of the latest Agile in the world Rakuten Group, Inc.
 
How to Jumpstart Enterprise Agile Adoption
How to Jumpstart Enterprise Agile AdoptionHow to Jumpstart Enterprise Agile Adoption
How to Jumpstart Enterprise Agile AdoptionTechWell
 
Quality for DevOps teams - Quality engineering in the DevOps culture
Quality for DevOps teams - Quality engineering in the DevOps cultureQuality for DevOps teams - Quality engineering in the DevOps culture
Quality for DevOps teams - Quality engineering in the DevOps cultureRik Marselis
 
A confused tester in agile world finalversion
A confused tester in agile world finalversionA confused tester in agile world finalversion
A confused tester in agile world finalversionAshish Kumar
 
Visual Studio 2010 Agile Tools (role based)
Visual Studio 2010 Agile Tools (role based)Visual Studio 2010 Agile Tools (role based)
Visual Studio 2010 Agile Tools (role based)Alexei Govorine
 
Agile Tool Selection
Agile Tool SelectionAgile Tool Selection
Agile Tool SelectionChad Holdorf
 
Agile metrics at-pmi bangalore
Agile metrics at-pmi bangaloreAgile metrics at-pmi bangalore
Agile metrics at-pmi bangaloreBimlesh Gundurao
 
Technology-Driven Development: Using Automation and Development Techniques to...
Technology-Driven Development: Using Automation and Development Techniques to...Technology-Driven Development: Using Automation and Development Techniques to...
Technology-Driven Development: Using Automation and Development Techniques to...Hiroyuki Ito
 
Agile2014 Report: As a Speaker and a Reporter of the latest Agile in the world
Agile2014 Report: As a Speaker and a Reporter of the latest Agile in the worldAgile2014 Report: As a Speaker and a Reporter of the latest Agile in the world
Agile2014 Report: As a Speaker and a Reporter of the latest Agile in the worldHiroyuki Ito
 
Agile testing alliance cp aat highlights 1.2
Agile testing alliance cp aat highlights 1.2Agile testing alliance cp aat highlights 1.2
Agile testing alliance cp aat highlights 1.2Agile Testing Alliance
 
ІГОР КОШЕЛЄВ «Built-In Quality» Online QADay 2023
ІГОР КОШЕЛЄВ «Built-In Quality»  Online QADay 2023ІГОР КОШЕЛЄВ «Built-In Quality»  Online QADay 2023
ІГОР КОШЕЛЄВ «Built-In Quality» Online QADay 2023GoQA
 
Why I do not like to be a tester in Agile project?
Why I do not like to be a tester in Agile project?Why I do not like to be a tester in Agile project?
Why I do not like to be a tester in Agile project?SQALab
 
NUS-ISS Learning Day 2016 - Improve IT Project Management and other IT Proces...
NUS-ISS Learning Day 2016 - Improve IT Project Management and other IT Proces...NUS-ISS Learning Day 2016 - Improve IT Project Management and other IT Proces...
NUS-ISS Learning Day 2016 - Improve IT Project Management and other IT Proces...NUS-ISS
 

Similaire à Agile Mëtteg series - Session 5 (20)

Sprinkle on Just Enough Process
Sprinkle on Just Enough ProcessSprinkle on Just Enough Process
Sprinkle on Just Enough Process
 
Agile metteg 9(agile tooling)-draft-v1.0
Agile metteg 9(agile tooling)-draft-v1.0Agile metteg 9(agile tooling)-draft-v1.0
Agile metteg 9(agile tooling)-draft-v1.0
 
Campbell & Readman - TDD It's Not Tester Driven Development - EuroSTAR 2012
Campbell & Readman - TDD It's Not Tester Driven Development - EuroSTAR 2012Campbell & Readman - TDD It's Not Tester Driven Development - EuroSTAR 2012
Campbell & Readman - TDD It's Not Tester Driven Development - EuroSTAR 2012
 
Agile2014 Report: As a Speaker and a Reporter of the latest Agile in the world
Agile2014 Report: As a Speaker and a Reporter of the latest Agile in the world  Agile2014 Report: As a Speaker and a Reporter of the latest Agile in the world
Agile2014 Report: As a Speaker and a Reporter of the latest Agile in the world
 
How to Jumpstart Enterprise Agile Adoption
How to Jumpstart Enterprise Agile AdoptionHow to Jumpstart Enterprise Agile Adoption
How to Jumpstart Enterprise Agile Adoption
 
TestOps and Shift Left
TestOps and Shift LeftTestOps and Shift Left
TestOps and Shift Left
 
Quality for DevOps teams - Quality engineering in the DevOps culture
Quality for DevOps teams - Quality engineering in the DevOps cultureQuality for DevOps teams - Quality engineering in the DevOps culture
Quality for DevOps teams - Quality engineering in the DevOps culture
 
A confused tester in agile world finalversion
A confused tester in agile world finalversionA confused tester in agile world finalversion
A confused tester in agile world finalversion
 
Agile Overview
 Agile Overview  Agile Overview
Agile Overview
 
Visual Studio 2010 Agile Tools (role based)
Visual Studio 2010 Agile Tools (role based)Visual Studio 2010 Agile Tools (role based)
Visual Studio 2010 Agile Tools (role based)
 
Agile Tool Selection
Agile Tool SelectionAgile Tool Selection
Agile Tool Selection
 
Agile metrics at-pmi bangalore
Agile metrics at-pmi bangaloreAgile metrics at-pmi bangalore
Agile metrics at-pmi bangalore
 
Technology-Driven Development: Using Automation and Development Techniques to...
Technology-Driven Development: Using Automation and Development Techniques to...Technology-Driven Development: Using Automation and Development Techniques to...
Technology-Driven Development: Using Automation and Development Techniques to...
 
TDD in Agile
TDD in AgileTDD in Agile
TDD in Agile
 
Agile2014 Report: As a Speaker and a Reporter of the latest Agile in the world
Agile2014 Report: As a Speaker and a Reporter of the latest Agile in the worldAgile2014 Report: As a Speaker and a Reporter of the latest Agile in the world
Agile2014 Report: As a Speaker and a Reporter of the latest Agile in the world
 
Agile testing alliance cp aat highlights 1.2
Agile testing alliance cp aat highlights 1.2Agile testing alliance cp aat highlights 1.2
Agile testing alliance cp aat highlights 1.2
 
Agile test tools
Agile test toolsAgile test tools
Agile test tools
 
ІГОР КОШЕЛЄВ «Built-In Quality» Online QADay 2023
ІГОР КОШЕЛЄВ «Built-In Quality»  Online QADay 2023ІГОР КОШЕЛЄВ «Built-In Quality»  Online QADay 2023
ІГОР КОШЕЛЄВ «Built-In Quality» Online QADay 2023
 
Why I do not like to be a tester in Agile project?
Why I do not like to be a tester in Agile project?Why I do not like to be a tester in Agile project?
Why I do not like to be a tester in Agile project?
 
NUS-ISS Learning Day 2016 - Improve IT Project Management and other IT Proces...
NUS-ISS Learning Day 2016 - Improve IT Project Management and other IT Proces...NUS-ISS Learning Day 2016 - Improve IT Project Management and other IT Proces...
NUS-ISS Learning Day 2016 - Improve IT Project Management and other IT Proces...
 

Plus de Agile Partner S.A.

Domain-Driven Design: From strategic business goals to software implementation
Domain-Driven Design: From strategic business goals to software implementationDomain-Driven Design: From strategic business goals to software implementation
Domain-Driven Design: From strategic business goals to software implementationAgile Partner S.A.
 
Devops: la réunion des co-propriétaires
Devops: la réunion des co-propriétairesDevops: la réunion des co-propriétaires
Devops: la réunion des co-propriétairesAgile Partner S.A.
 
Comment intégrer au plus tôt l’utilisateur dans le développement d’une applic...
Comment intégrer au plus tôt l’utilisateur dans le développement d’une applic...Comment intégrer au plus tôt l’utilisateur dans le développement d’une applic...
Comment intégrer au plus tôt l’utilisateur dans le développement d’une applic...Agile Partner S.A.
 
Agilité : la voix de la collaboration
Agilité : la voix de la collaborationAgilité : la voix de la collaboration
Agilité : la voix de la collaborationAgile Partner S.A.
 
Market validation (by Sylvain Chery)
Market validation (by Sylvain Chery)Market validation (by Sylvain Chery)
Market validation (by Sylvain Chery)Agile Partner S.A.
 
Agile Brown Bag: Gouvernance SharePoint
Agile Brown Bag: Gouvernance SharePointAgile Brown Bag: Gouvernance SharePoint
Agile Brown Bag: Gouvernance SharePointAgile Partner S.A.
 
Agile Mëtteg Septembre 2015: Introduction à DevOps
Agile Mëtteg Septembre 2015: Introduction à DevOpsAgile Mëtteg Septembre 2015: Introduction à DevOps
Agile Mëtteg Septembre 2015: Introduction à DevOpsAgile Partner S.A.
 
Agile Brown Bag - Vagrant & Docker: Introduction
Agile Brown Bag - Vagrant & Docker: IntroductionAgile Brown Bag - Vagrant & Docker: Introduction
Agile Brown Bag - Vagrant & Docker: IntroductionAgile Partner S.A.
 
Retour d expérience_sur_l_agilité
Retour d expérience_sur_l_agilitéRetour d expérience_sur_l_agilité
Retour d expérience_sur_l_agilitéAgile Partner S.A.
 
Continuous innovation with Lean Startup
Continuous innovation with Lean StartupContinuous innovation with Lean Startup
Continuous innovation with Lean StartupAgile Partner S.A.
 
Maîtriser et controler vos projets Agile
Maîtriser et controler vos projets AgileMaîtriser et controler vos projets Agile
Maîtriser et controler vos projets AgileAgile Partner S.A.
 
Kanban: going Lean/Agile for your IT dev. & support team
Kanban: going Lean/Agile for your IT dev. & support teamKanban: going Lean/Agile for your IT dev. & support team
Kanban: going Lean/Agile for your IT dev. & support teamAgile Partner S.A.
 
Agility, a mature approach, the fruit of more than 30 years research
Agility, a mature approach, the fruit of more than 30 years researchAgility, a mature approach, the fruit of more than 30 years research
Agility, a mature approach, the fruit of more than 30 years researchAgile Partner S.A.
 
L’Agilité à l’état mûr ou le fruit de plus de 30 ans de réflexion
L’Agilité à l’état mûr ou le fruit de plus de 30 ans de réflexionL’Agilité à l’état mûr ou le fruit de plus de 30 ans de réflexion
L’Agilité à l’état mûr ou le fruit de plus de 30 ans de réflexionAgile Partner S.A.
 

Plus de Agile Partner S.A. (20)

Domain-Driven Design: From strategic business goals to software implementation
Domain-Driven Design: From strategic business goals to software implementationDomain-Driven Design: From strategic business goals to software implementation
Domain-Driven Design: From strategic business goals to software implementation
 
Devops: la réunion des co-propriétaires
Devops: la réunion des co-propriétairesDevops: la réunion des co-propriétaires
Devops: la réunion des co-propriétaires
 
Découverte de l'esprit agile
Découverte de l'esprit agileDécouverte de l'esprit agile
Découverte de l'esprit agile
 
Comment intégrer au plus tôt l’utilisateur dans le développement d’une applic...
Comment intégrer au plus tôt l’utilisateur dans le développement d’une applic...Comment intégrer au plus tôt l’utilisateur dans le développement d’une applic...
Comment intégrer au plus tôt l’utilisateur dans le développement d’une applic...
 
Agilité : la voix de la collaboration
Agilité : la voix de la collaborationAgilité : la voix de la collaboration
Agilité : la voix de la collaboration
 
Market validation (by Sylvain Chery)
Market validation (by Sylvain Chery)Market validation (by Sylvain Chery)
Market validation (by Sylvain Chery)
 
Agile Brown Bag: Gouvernance SharePoint
Agile Brown Bag: Gouvernance SharePointAgile Brown Bag: Gouvernance SharePoint
Agile Brown Bag: Gouvernance SharePoint
 
Agile Mëtteg Septembre 2015: Introduction à DevOps
Agile Mëtteg Septembre 2015: Introduction à DevOpsAgile Mëtteg Septembre 2015: Introduction à DevOps
Agile Mëtteg Septembre 2015: Introduction à DevOps
 
Agile Brown Bag - Vagrant & Docker: Introduction
Agile Brown Bag - Vagrant & Docker: IntroductionAgile Brown Bag - Vagrant & Docker: Introduction
Agile Brown Bag - Vagrant & Docker: Introduction
 
Introduction to agile methods
Introduction to agile methodsIntroduction to agile methods
Introduction to agile methods
 
Retour d expérience_sur_l_agilité
Retour d expérience_sur_l_agilitéRetour d expérience_sur_l_agilité
Retour d expérience_sur_l_agilité
 
Continuous innovation with Lean Startup
Continuous innovation with Lean StartupContinuous innovation with Lean Startup
Continuous innovation with Lean Startup
 
Agile testing games
Agile testing gamesAgile testing games
Agile testing games
 
Coding Dojo
Coding DojoCoding Dojo
Coding Dojo
 
Lkfr12 - De Scrum à Kanban
Lkfr12 - De Scrum à KanbanLkfr12 - De Scrum à Kanban
Lkfr12 - De Scrum à Kanban
 
Maîtriser et controler vos projets Agile
Maîtriser et controler vos projets AgileMaîtriser et controler vos projets Agile
Maîtriser et controler vos projets Agile
 
Kanban: going Lean/Agile for your IT dev. & support team
Kanban: going Lean/Agile for your IT dev. & support teamKanban: going Lean/Agile for your IT dev. & support team
Kanban: going Lean/Agile for your IT dev. & support team
 
It job day Henam 2011-06-20
It job day Henam 2011-06-20It job day Henam 2011-06-20
It job day Henam 2011-06-20
 
Agility, a mature approach, the fruit of more than 30 years research
Agility, a mature approach, the fruit of more than 30 years researchAgility, a mature approach, the fruit of more than 30 years research
Agility, a mature approach, the fruit of more than 30 years research
 
L’Agilité à l’état mûr ou le fruit de plus de 30 ans de réflexion
L’Agilité à l’état mûr ou le fruit de plus de 30 ans de réflexionL’Agilité à l’état mûr ou le fruit de plus de 30 ans de réflexion
L’Agilité à l’état mûr ou le fruit de plus de 30 ans de réflexion
 

Dernier

Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Scott Andery
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditSkynet Technologies
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 

Dernier (20)

Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance Audit
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 

Agile Mëtteg series - Session 5

  • 1. Agile testing Agile Mëtteg – 15 July 2010
  • 2. Agile Mëtteg in 2010 Complete Agile Mëtteg calendar on www.agilepartner.net/agility_seminars.html 15 July 2010 Agile Mëtteg - Agile Testing 2
  • 3. OBJECTIVES & AGENDA Objectives This session will focus on a Agile Testing and provide you with practical examples and techniques to help your team understand what is behind this approach. Agenda Introduction of Agile Partner The attendees What is agile testing? And why? And how? Unit testing Behaviour Driven Development Test Driven Development Acceptance testing Q&A 15 July 2010 Agile Mëtteg - Agile Testing 3
  • 4. AGILE PARTNER SERVICES 15 July 2010 Agile Mëtteg - Agile testing 4 IS users Services 1 Custom Software Development & Maintenance Our core business to answer customer needs IS services Thanks to our expertise we can support IT team to reach their productivity & quality objectives (Assessment, Coaching, Support, Training, Resource delegation…) IS Solutions Take benefit from commercial or Open Source platform to answer as quick as possible to specific needs IS users services We can support Product & Services owners to work closely with the IT team (Assessment, Coaching, Support, Training, Resource delegation…) 4 Software Development & SoftwareMaintenance 2 ISSolutions IS Services Agility Agility 3 1 2 3 4 Agility
  • 5. NEXT TRAININGS & CERTIFICATIONS 15 July 2010 Agile Mëtteg - Agile testing 5 -15% Complete calendar on: http://www.agilepartner.net/training/training_calendar.html
  • 6. Let’s get acquainted July 15th, 2010 Agile Mëtteg – Agile Testing 6
  • 7. PRESENTATION OF THE ATTENDEES Who are you ? What is your role ? What do you know about agility ? What are your expectations ? July 15th, 2010 Agile Mëtteg – Agile Testing 7
  • 8. AGENDA Agenda What is agile testing? And why? And how? Unit testing Test Driven Development Acceptance testing Behaviour Driven Development 15 July 2010 Agile Mëtteg - Agile testing 8
  • 9. WHAT IS SOFTWARE TESTING? Definition: Software testing is an investigation conducted to provide stakeholders with information about the quality of the product or service under test. (Wikipedia) 15 July 2010 Agile Mëtteg - Agile testing 9
  • 10. WHAT IS SOFTWARE TESTING? Definition: Software testing is a way to measure the quality of the product using tests. (Stephan Zimmer & Eric Ferrot) 15 July 2010 Agile Mëtteg - Agile testing 10
  • 11. MEASURING QUALITY Measuring quality using tests: tests to find defects functional / non-functional testing a LOT of kinds of tests 15 July 2010 Agile Mëtteg - Agile testing 11
  • 12. 15 July 2010 Agile Mëtteg - Agile testing 12 SO WHAT IS AGILE TESTING ?… AND WHY?… AND HOW?
  • 13. Traditional / Waterfall approach Testing is done after the development WHAT IS AGILE TESTING? 15 July 2010 Agile Mëtteg - Agile testing 13
  • 14. Agile approach Testing is part of the development process WHAT IS AGILE TESTING? 15 July 2010 Agile Mëtteg - Agile testing 14 Iteration 1 Iteration 2 Iteration n No specific order
  • 15. WHAT IS AGILE TESTING? 15 July 2010 Agile Mëtteg - Agile testing 15 Programmer Traditional / Waterfall approach Testing is done after the development Clear separation of roles Domain Expert Tester
  • 16. Agile approach Testing is part of the development process A whole team WHAT IS AGILE TESTING? 15 July 2010 Agile Mëtteg - Agile testing 16 Programmer Programmer Domain Expert Tester Tester
  • 17. Agile testing places an increased portion of the testing in the hands of the developers Wait… WHAT?!?! I’m a programmer not a tester It’s trivial I don’tneed a test I don’t have time for testing My code isverydifficult to test WHAT IS AGILE TESTING? 15 July 2010 Agile Mëtteg - Agile testing 17
  • 18. WHY AGILE TESTING? WHY should developers write tests? Fear / Confidence Do you dare to change the code?  Tests = safety net It places developers as users  Better usability It makes the code testable  Better design 15 July 2010 Agile Mëtteg - Agile testing 18
  • 19. WHY AGILE TESTING? A better design “How good the design is doesn't matter near as much as whether the design is getting better or worse. If it is getting better, day by day, I can live with it forever. If it is getting worse, I will die.” (Kent Beck ) 15 July 2010 Agile Mëtteg - Agile testing 19
  • 20. AGILE TESTING… HOW? Agile testing… HOW? Unit testing Test Driven Development Acceptance testing Behaviour Driven Development 15 July 2010 Agile Mëtteg - Agile testing 20
  • 21. BUT FIRST… 15 July 2010 Agile Mëtteg - Agile testing 21
  • 22. LET US INTRODUCE YOU TO… 15 July 2010 Agile Mëtteg - Agile testing 22 TIME MASTER TIM!
  • 23. AGILE TESTING… HOW? DINO LEGS A real project A new feature: „The Crystal Quest“ 15 July 2010 Agile Mëtteg - Agile testing 23 http://dinolegs.blogspot.com/
  • 24. UNIT TESTING 15 July 2010 Agile Mëtteg - Agile testing 24
  • 25. UNIT TESTING Definitions Unit : Smallest testable part of an application Unit test : A method to test a unit 15 July 2010 Agile Mëtteg - Agile testing 25
  • 26. UNIT TESTING Some bad things about unit tests: Expensive to write and expensive to maintain You can test too much You can test the wrong things Possibility to get false sense of security when all tests pass No integration tests 15 July 2010 Agile Mëtteg - Agile testing 26
  • 27. UNIT TESTING Why write unit tests? More confidence in the code Avoid regression Tests themselves are documentation Encourages better software design: minimal interfaces and modularity 15 July 2010 Agile Mëtteg - Agile testing 27
  • 28. UNIT TESTING The „3A“ pattern Arrange Act Assert 15 July 2010 Agile Mëtteg - Agile testing 28
  • 29. UNIT TESTING F.I.R.S.T. Fast Independent Repeatable Self-Validating Timely [Clean Code – Robert C. Martin] 15 July 2010 Agile Mëtteg - Agile testing 29
  • 30. UNIT TESTING „The act of writing a unit test is more an act of design than of verification“ (Robert C. Martin) 15 July 2010 Agile Mëtteg - Agile testing 30
  • 31. UNIT TESTING A lot of existing unit testing… xUnit (NUnit, Junit, csUnit, …), MSTest, Pex, Visual Studio UTF, etc. …and mocking frameworks Moq, Rhino Mocks, Moles, TypeMock, JMock, etc. 15 July 2010 Agile Mëtteg - Agile testing 31
  • 32. TEST DRIVEN DEVELOPMENT (TDD) 15 July 2010 Agile Mëtteg - Agile testing 32
  • 33. TEST DRIVEN DEVELOPMENT (TDD) 15 July 2010 Agile Mëtteg - Agile testing 33 Unit Test What is TDD? Difference to unit testing Write the unit test Code FIRST!
  • 34. TEST DRIVEN DEVELOPMENT (TDD) What is TDD? Difference to unit testing Write the unit test FIRST! « Red – Green – Refactor » pattern 15 July 2010 Agile Mëtteg - Agile testing 34
  • 35. TEST DRIVEN DEVELOPMENT (TDD) Red – Green – Refactor Make it failwrite the test first Make it workwrite the simplest implementation Make it betterrefactor without changing the behavior 15 July 2010 Agile Mëtteg - Agile testing 35
  • 36. TEST DRIVEN DESIGN (TDD) TDD is not only about testing Also called Test Driven Design TDD is a methodology that helps creating a good design when developing code. 15 July 2010 Agile Mëtteg - Agile testing 36
  • 37. TEST DRIVEN DESIGN (TDD) TDD is not only about testing Also called Test Driven Design TDD consequences YAGNI DRY Law of Demeter Single responsibility principle Interface segregation principle Inversion of control 15 July 2010 Agile Mëtteg - Agile testing 37 GOOD DESIGN !
  • 38. TEST DRIVEN DEVELOPMENT (TDD) DEMO 15 July 2010 Agile Mëtteg - Agile testing 38
  • 39. ACCEPTANCE TESTING 15 July 2010 Agile Mëtteg - Agile testing 39
  • 40. ACCEPTANCE TESTING Unit testing tells us that the code is meeting the programmer‘s expectations Unit testing is essential but not sufficient Acceptance tests are specifications for the desired behaviour and functionality of a system. Customer oriented About the what and not the how Usually black box system tests Integration tests character 15 July 2010 Agile Mëtteg - Agile testing 40
  • 41. ACCEPTANCE TESTING Implementing acceptance tests  means automation Examples of automation tools: Framework for Integrated Test (Fit) is an open-source tool for automated acceptance test Fitnesse is a webserver, a wiki and an automated testing tool based on Fit 15 July 2010 Agile Mëtteg - Agile testing 41
  • 42. ACCEPTANCE TESTING DEMO 15 July 2010 Agile Mëtteg - Agile testing 42
  • 43. BEHAVIOUR DRIVEN DEVELOPMENT (BDD) 15 July 2010 Agile Mëtteg - Agile testing 43
  • 44. BEHAVIOUR DRIVEN DEVELOPMENT Behaviour Driven Development (BDD) Evolution of TDD introduced by Dan North Using terminology focused on the behavioural aspects of the system rather than testing  Unit ≠ behaviour  Focus on why the code should be created  Business value > Code  Specification > Test 15 July 2010 Agile Mëtteg - Agile testing 44
  • 45. BEHAVIOUR DRIVEN DEVELOPMENT Outside-in methodology  from the known to the unknown Helps the developer to think YAGNI  Leads to better design  BDD = Behaviour Driven Design Don‘t forget about the roots (TDD)  Red – Green – Refactor 15 July 2010 Agile Mëtteg - Agile testing 45
  • 46. BEHAVIOUR DRIVEN DEVELOPMENT Programmer Ubiquitous language based on the business domain Common vocabulary between participants Minimizes translation Avoids miscommunication Makes it easier to validate early Domain Expert Tester 15 July 2010 Agile Mëtteg - Agile testing 46
  • 47. BEHAVIOUR DRIVEN DEVELOPMENT Story framework Each feature is captured in a „story“, which defines the scope of the feature along with its acceptance criteria Feature Feature: Title As a [role] I want [feature] so that [benefit] Feature: Crystal quest As a player I want to collect time crystals so that I am able to complete the crystal quest 15 July 2010 Agile Mëtteg - Agile testing 47
  • 48. BEHAVIOUR DRIVEN DEVELOPMENT Scenario / Acceptance criteria Scenario:Title Given some initial context, And some additional context, When an event occurs, Then ensure some outcomes Scenario 1:Tim loses a crystal Given a Tim is on screen And a crystal is on screen, When Tim dies, Then the crystal disappears And Tim‘s player score is decreased by 20 Scenario 2:Tim collects a crystal Given Tim is on screen And a crystal is on screen, When Tim touches the crystal, Then the crystal disappears And a nice music is played And Tim‘s player score is increased by 100 15 July 2010 Agile Mëtteg - Agile testing 48
  • 49. BEHAVIOUR DRIVEN DEVELOPMENT Several existing tools for automation JBehave, NBehave, JSpec, NSpec, CppSpec, PHPSpec, SpecFlow, RSpec, Cucumber, …  Executable specification  Quick feedback and regression testing  Requirements are tests  Tests are documentation 15 July 2010 Agile Mëtteg - Agile testing 49
  • 50. BEHAVIOUR DRIVEN DEVELOPMENT DEMO 15 July 2010 Agile Mëtteg - Agile testing 50
  • 51. SUMMARY 15 July 2010 Agile Mëtteg - Agile testing 51
  • 52. SUMMARY Some things to remember about Agile Testing: Testing is part of the development process Whole-team approach: roles not that strictly separated as in traditional approach Building a testable architecture leads to a better design ... and don‘t forget! Setup a working environment 15 July 2010 Agile Mëtteg - Agile testing 52
  • 53. QUESTIONS 53 Agile Mëtteg - Agile testing 15 July 2010
  • 54. NEXT TRAININGS & CERTIFICATIONS 15 July 2010 Agile Mëtteg - Agile testing 54 Complete calendar on: http://www.agilepartner.net/training/training_calendar.html
  • 55. RESOURCES Agile Partner: www.agilepartner.net Agile Interest Group Luxembourg:www.aiglu.org Agile Alliance: www.agilealliance.org Scrum alliance: www.scrumalliance.org Scrum.org 15 July 2010 Agile Mëtteg - Agile testing 55
  • 56. CONTACTS Thank You 15 July 2010 Agile Mëtteg - Agile testing 56

Notes de l'éditeur

  1. GFA
  2. GFA
  3. ERF/SZ
  4. ERF
  5. ERF
  6. ERF
  7. ERF
  8. ERF
  9. ERF
  10. ERF
  11. ERF
  12. ERF(+SZ)
  13. ERF
  14. ERF
  15. ERF
  16. ERF
  17. ERF
  18. ERF
  19. SZ
  20. SZThe goal of unit testing is to isolate each part of the program and show that the individual parts are correct.Unit tests find problems early in the development cycle.A unit test provides a strict, written contract that the piece of code must satisfy. As a result, it affords several benefits.
  21. SZ
  22. SZMore confidence in the codeAvoid regression: If tests are run frequently the developer can see when new code breaks old code.The tests themselves are documentationEncourages better software design: simpler, smaller methods; less coupling instead of strongly coupled code[Compare introduction, maybe too similar?]
  23. SZPrinciples for unit testsIt’s much easier to see:What is being set up and initialized in the arrange section What method is being executed in the act section What determines the outcome of the test in the assert section
  24. SZ
  25. SZOriginated in XP.Unit tests are essential parts of XP and other agile methods.
  26. SZ
  27. ERF
  28. ERF
  29. ERF
  30. ERF
  31. ERF
  32. ERF
  33. ERF
  34. SZ
  35. SZAcceptance tests are specifications for the desired behavior and functionality of a system. WHY?Although acceptance testing traditionally takes place at the end of development or major milestones, in agile software development acceptance testing needs to be performed at the user story level. There are several reasons for why this is important:A passed test case becomes a measure of completeness of a user story; that is, a user story cannot be considered complete till it has passed all acceptance tests associated with it. Even though there is thorough unit testing performed, this is not enough. Unit tests, by their nature, test for a localized used case and are not concerned about the overall system. When we have iterations longer than a couple of weeks, it becomes easy to loose focus on initial agreements; acceptance test cases made for each story at the beginning of each iteration help the developers to keep things within the expectations. Acceptance test cases can serve as an excellent guide to developers to better interpret the requirements from a user story
  36. SZFit – the engineThe customers' examples are formatted in tables and saved as HTML using ordinary business tools such as Microsoft Excel. When Fit checks the document, it creates a copy and colors the tables green, red, and yellow according to whether the software behaved as expected. Fitnesse – Also the wiki on topFitNesse allows users of a developed system to enter specially formatted input (its format is accessible to non-programmers). This input is interpreted and tests are created automatically. These tests are then executed by the system and output is returned back to the user. The advantage of this approach is very fast feedback from users. The developer of the system to be tested needs to provide some support (classes named "fixtures", conforming to certain conventions). fast user feedbackERF demo -> score computation dino legs
  37. ERF
  38. SZI
  39. SZBehavior-driven developmentBDD aims to help focus on the delivery of prioritised, verifiable business value by providing a common vocabularyBy using terminology focused on the behavioural aspects of the system rather than testing, BDD attempts to help direct developers towards a focus on the real value to be found in TDD at its most successful. "Behavior-driven development is what you are doing already, if you are doing Test-driven development well." (Dave Astels)Behavior Driven Development is more about interactions with the application than just unit testing. It forces the developer to understand the responsibility of the method he is about to write. Using good tools, the specs written to test the application can be used as specifications. Doing what comes naturallyBDD isn't anything new or revolutionary. It's just an evolutionary offshoot of TDD in which the word "test" is replaced by the word "should." Semantics aside, many people find the concept of should a much more natural development driver than the concept of testing. Thinking in terms of behavior (shoulds) somehow paves the way into writing specification classes first, which, in turn, can be a very efficient implementation driver.For many developers, the shift from test-driven development to BDD is a smart move. With BDD, you don't have to think about tests, you can just pay attention to the requirements of your application and ensure that the application behavior does what it should to meet those requirements. Using BDD to drive development Behavior driven development (BDD) is an evolutionary result of test driven development (TDD) in the sense that rather than thinking in terms of tests (which have the tendency to make you think after the fact) you can more easily think in terms of a specification. By thinking about an application’s specification or behavior, it becomes easier to validate things early– in fact, when thinking in terms of a specification, it becomes quite easy to write things upfront.
  40. SZ
  41. SZBDD relies on the use of a very specific (and small) vocabulary to minimize miscommunication and to ensure that everyone – the business, developers, testers, analysts and managers – are not only on the same page but using the same words. BDD provides a “ubiquitous language” for analysis Around this time, Eric Evans published his bestselling book Domain-Driven Design. In it, he describes the concept of modeling a system using a ubiquitous language based on the business domain, so that the business vocabulary permeates right into the codebase.
  42. SZIStructural templatesFeature:As a [X]I want [Y]so that [Z] (In order)The template had to be loose enough that it wouldn’t feel artificial or constraining to analysts but structured enough that we could break the story into its constituent fragments and automate them. We started describing the acceptance criteria in terms of scenarios, which took the following form:Scenarios:Given some initial context (the givens),When an event occurs,then ensure some outcomes.
  43. SZIStructural templatesFeature:As a [X]I want [Y]so that [Z] (In order)The template had to be loose enough that it wouldn’t feel artificial or constraining to analysts but structured enough that we could break the story into its constituent fragments and automate them. We started describing the acceptance criteria in terms of scenarios, which took the following form:Scenarios:Given some initial context (the givens),When an event occurs,then ensure some outcomes.
  44. SZI
  45. ERF
  46. SZI
  47. SZI