SlideShare uma empresa Scribd logo
1 de 22
Baixar para ler offline
Tools for Java test automation

Daniel Wildt
Software Developer
dwildt@gmail.com
http://danielwildt.blogspot.com
Agenda

•   Test is a form of art
•   Agile Methodologies and testing
•   White box testing techniques (Unit Testing)
•   Black box testing techniques (Functional)
•   Ensuring Quality in the test process with Test
    Coverage
•   Applying Test Driven Development and
    Continuous Integration
•   Final words
•   References
•   Links

                                                     2
                             !
Test is a form of art
• You need to verify development code without
  seeing it (some times)
• You need to ensure that requirements are
  implemented in the same way they were defined
• You need to embrace change (focus on
  customer)
• You need to test faster to deliver faster (short
  cycles)
• You need to apply quality while testing
• You need to have a good coverage of
  source/requirements while testing
• You need to be creative while finding spots to
  test
                                                 3
                          !
Agile Methodologies and Testing

• Agile Methodologies are based on disciplines
  and practices that focus on principles like these
  (from Agile Manifesto principles):
  • Satisfy the customer as highest priority, through early and continuous
    delivery of valuable software.
  • Business people and developers working together daily throughout the
    project
  • Measure the progress of a project based on working software, its
    primary measure
  • Self organizing teams, motivated individuals, communication and
    simplicity as strong values
  • Technical excellence is wanted to enhance agility.
  • Continuous improvement, to tune and adjust teams to become more
    effective.


                                                                             4
                                       !
Agile Methodologies and Testing




                                  5
                !
Agile Methodologies and Testing




                                  6
                !
White box testing techniques
       (Unit Testing)
• Source grow together with source
  • TDD




                                      7
                         !
White box testing techniques
       (Unit Testing)
• Easy integration for
  Business - FIT




                                      8
                         !
White box testing techniques
            (Unit Testing)
•   You don’t have it?
    Mock!

    public class ExampleTest {
        @Before
        public void setup() {
            mock = createMock(Collaborator.class);
            classUnderTest = new ClassUnderTest();
            classUnderTest.addListener(mock);
        }
        @Test
        public void addDocument() {
            mock.documentAdded(quot;New Documentquot;);
            replay(mock);
            classUnderTest.addDocument(quot;New Documentquot;,
                new byte[0]);
            verify(mock);
        }
    }
                                                     9
                             !
Black box testing techniques
       (Functional)
• Functional Test
  Selenium IDE




                                      10
                       !
Black box testing techniques
       (Functional)
• Stress Testing
• JMeter




                                      11
                       !
Ensuring Quality in the test process
with Test Coverage




                                       12
                 !
Applying Test Driven Development
and Continuous Integration




                                   13
               !
Applying Test Driven Development
and Continuous Integration




                                   14
               !
Final words

• Always think about this:


                  Verification
                       X
                  Validation
                        ?
• More: check CMMI – Level 3

                                 15
                             !
Final words




http://www.ambysoft.com/essays/floot.html
                                                16
                                            !
References

• Beck, Kent; Andres, Cynthia. Extreme
  Programming explained: embrace change. 2ª
  edition.
• Pressman, Roger S. Software Engineering.
• Agile Manifesto
  http://www.agilemanifesto.org




                                              17
                        !
References

• Tinkha, Andy; Kaner, Cem. Exploring
  Exploratory Testing.
  http://www.testingeducation.org/a/explore.pdf
• Scott Ambler essay about FLOOT.
  http://www.ambysoft.com/essays/floot.html
• Ciclomatic Complexity.
  http://www.sei.cmu.edu/str/descriptions/cyclomat
  ic_body.html



                                                18
                          !
Links

• JUnit – Unit Testing
   • http://www.junit.org
• JMeter – Stress Testing
   • http://jakarta.apache.org/jmeter/
• Emma – Code Coverage
   • http://emma.sf.net
• Selenium –Functional testing
   • http://www.openqa.org/selenium/
• PMD – Code Audit
   • http://pmd.sf.net

                                         19
                           !
Links

• CheckStyle –Code Audit
   • http://checkstyle.sf.net
• Easy Mock
   • http://www.easymock.org/
• FIT
   • http://fit.c2.com/
• Lunt Build
   • http://luntbuild.javaforge.com/
• Cruise Control
   • http://confluence.public.thoughtworks.org/disp
     lay/CC

                                                  20
                           !
Questions?




             21
      !
Thanks!




          22
    !

Mais conteúdo relacionado

Mais procurados

Test driven development
Test driven developmentTest driven development
Test driven development
lukaszkujawa
 
Scrum and Test-driven development
Scrum and Test-driven developmentScrum and Test-driven development
Scrum and Test-driven development
toteb5
 
Engaging IV&V Testing Services for Agile Projects
Engaging IV&V Testing Services for Agile ProjectsEngaging IV&V Testing Services for Agile Projects
Engaging IV&V Testing Services for Agile Projects
Ravi Kumar
 

Mais procurados (19)

Test-Driven Development
Test-Driven DevelopmentTest-Driven Development
Test-Driven Development
 
Python and test
Python and testPython and test
Python and test
 
TDD and Simple Design Workshop - Session 1 - March 2019
TDD and Simple Design Workshop - Session 1 - March 2019TDD and Simple Design Workshop - Session 1 - March 2019
TDD and Simple Design Workshop - Session 1 - March 2019
 
TDD and Simple Design Workshop - Session 1 - November 2018
TDD and Simple Design Workshop - Session 1 - November 2018TDD and Simple Design Workshop - Session 1 - November 2018
TDD and Simple Design Workshop - Session 1 - November 2018
 
Unit Testing and TDD 2017
Unit Testing and TDD 2017Unit Testing and TDD 2017
Unit Testing and TDD 2017
 
Test-Driven development; why you should never code without it
Test-Driven development; why you should never code without itTest-Driven development; why you should never code without it
Test-Driven development; why you should never code without it
 
Treat Your Unit Tests As Production Code - DARGO - Amadeus - Soirée du Test L...
Treat Your Unit Tests As Production Code - DARGO - Amadeus - Soirée du Test L...Treat Your Unit Tests As Production Code - DARGO - Amadeus - Soirée du Test L...
Treat Your Unit Tests As Production Code - DARGO - Amadeus - Soirée du Test L...
 
An Introduction to Test Driven Development
An Introduction to Test Driven Development An Introduction to Test Driven Development
An Introduction to Test Driven Development
 
Test driven development
Test driven developmentTest driven development
Test driven development
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
Test driven development
Test driven developmentTest driven development
Test driven development
 
Session #3: "It Works on My Machine!" Closing the Loop Between Development & ...
Session #3: "It Works on My Machine!" Closing the Loop Between Development & ...Session #3: "It Works on My Machine!" Closing the Loop Between Development & ...
Session #3: "It Works on My Machine!" Closing the Loop Between Development & ...
 
Google test training
Google test trainingGoogle test training
Google test training
 
TDD (Test Driven Design)
TDD (Test Driven Design)TDD (Test Driven Design)
TDD (Test Driven Design)
 
Tdd 왜 배우기 어려운가
Tdd 왜 배우기 어려운가Tdd 왜 배우기 어려운가
Tdd 왜 배우기 어려운가
 
Scrum and Test-driven development
Scrum and Test-driven developmentScrum and Test-driven development
Scrum and Test-driven development
 
BDD on Java Concordion and Selenium
BDD on Java Concordion and SeleniumBDD on Java Concordion and Selenium
BDD on Java Concordion and Selenium
 
Test Driven Development (TDD)
Test Driven Development (TDD)Test Driven Development (TDD)
Test Driven Development (TDD)
 
Engaging IV&V Testing Services for Agile Projects
Engaging IV&V Testing Services for Agile ProjectsEngaging IV&V Testing Services for Agile Projects
Engaging IV&V Testing Services for Agile Projects
 

Semelhante a Just Java2007 - Daniel Wildt - Tools For Java Test Automation

[DSBW Spring 2009] Unit 09: Web Testing
[DSBW Spring 2009] Unit 09: Web Testing[DSBW Spring 2009] Unit 09: Web Testing
[DSBW Spring 2009] Unit 09: Web Testing
Carles Farré
 
Computer Software Testing Basics introduced.ppt
Computer Software Testing Basics introduced.pptComputer Software Testing Basics introduced.ppt
Computer Software Testing Basics introduced.ppt
TrevorChinguwo
 
Software Testing Tecniques
Software Testing TecniquesSoftware Testing Tecniques
Software Testing Tecniques
ersanbilik
 

Semelhante a Just Java2007 - Daniel Wildt - Tools For Java Test Automation (20)

Test
TestTest
Test
 
Testing Sap: Modern Methodology
Testing Sap: Modern MethodologyTesting Sap: Modern Methodology
Testing Sap: Modern Methodology
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
[DSBW Spring 2009] Unit 09: Web Testing
[DSBW Spring 2009] Unit 09: Web Testing[DSBW Spring 2009] Unit 09: Web Testing
[DSBW Spring 2009] Unit 09: Web Testing
 
An exploratory study of the state of practice of performance testing in Java-...
An exploratory study of the state of practice of performance testing in Java-...An exploratory study of the state of practice of performance testing in Java-...
An exploratory study of the state of practice of performance testing in Java-...
 
Agile Java Testing With Open Source Frameworks
Agile Java Testing With Open Source FrameworksAgile Java Testing With Open Source Frameworks
Agile Java Testing With Open Source Frameworks
 
Testing In Java
Testing In JavaTesting In Java
Testing In Java
 
Computer Software Testing Basics introduced.ppt
Computer Software Testing Basics introduced.pptComputer Software Testing Basics introduced.ppt
Computer Software Testing Basics introduced.ppt
 
Software Testing interview - Q&A and tips
Software Testing interview - Q&A and tipsSoftware Testing interview - Q&A and tips
Software Testing interview - Q&A and tips
 
Agile Testing 20021015
Agile Testing 20021015Agile Testing 20021015
Agile Testing 20021015
 
Bai giang-se-03mar14
Bai giang-se-03mar14Bai giang-se-03mar14
Bai giang-se-03mar14
 
Никита Галкин "Testing in Frontend World"
Никита Галкин "Testing in Frontend World"Никита Галкин "Testing in Frontend World"
Никита Галкин "Testing in Frontend World"
 
The DevOps Dance - Shift Left, Shift Right - Get It Right
The DevOps Dance - Shift Left, Shift Right - Get It RightThe DevOps Dance - Shift Left, Shift Right - Get It Right
The DevOps Dance - Shift Left, Shift Right - Get It Right
 
TEA Presentation V 0.3
TEA Presentation V 0.3TEA Presentation V 0.3
TEA Presentation V 0.3
 
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
 
Testing in FrontEnd World by Nikita Galkin
Testing in FrontEnd World by Nikita GalkinTesting in FrontEnd World by Nikita Galkin
Testing in FrontEnd World by Nikita Galkin
 
Unit Testing in Java
Unit Testing in JavaUnit Testing in Java
Unit Testing in Java
 
Testing Interview Questions.pdf
Testing Interview Questions.pdfTesting Interview Questions.pdf
Testing Interview Questions.pdf
 
Software Testing Tecniques
Software Testing TecniquesSoftware Testing Tecniques
Software Testing Tecniques
 
Building functional Quality Gates with ReportPortal
Building functional Quality Gates with ReportPortalBuilding functional Quality Gates with ReportPortal
Building functional Quality Gates with ReportPortal
 

Mais de Daniel Wildt

O que aprendemos com o eXtreme Programming e com o mundo Ágil | #XPConfBR 2014
O que aprendemos com o eXtreme Programming e com o mundo Ágil | #XPConfBR 2014O que aprendemos com o eXtreme Programming e com o mundo Ágil | #XPConfBR 2014
O que aprendemos com o eXtreme Programming e com o mundo Ágil | #XPConfBR 2014
Daniel Wildt
 
Agile KickStart 2 - Escrevendo User Stories
Agile KickStart 2 - Escrevendo User StoriesAgile KickStart 2 - Escrevendo User Stories
Agile KickStart 2 - Escrevendo User Stories
Daniel Wildt
 
Agile KickStart 3 - Planejamento e Dia a Dia de Projeto
Agile KickStart 3 - Planejamento e Dia a Dia de ProjetoAgile KickStart 3 - Planejamento e Dia a Dia de Projeto
Agile KickStart 3 - Planejamento e Dia a Dia de Projeto
Daniel Wildt
 
Agile KickStart 4 - Melhoria Contínua
Agile KickStart 4 - Melhoria ContínuaAgile KickStart 4 - Melhoria Contínua
Agile KickStart 4 - Melhoria Contínua
Daniel Wildt
 
Agile Kickstart 1 - Cultura Ágil
Agile Kickstart 1 - Cultura ÁgilAgile Kickstart 1 - Cultura Ágil
Agile Kickstart 1 - Cultura Ágil
Daniel Wildt
 

Mais de Daniel Wildt (20)

Não Espere!
Não Espere! Não Espere!
Não Espere!
 
Pré-Jogo / Inception - Descobrindo Produtos Viáveis
Pré-Jogo / Inception - Descobrindo Produtos ViáveisPré-Jogo / Inception - Descobrindo Produtos Viáveis
Pré-Jogo / Inception - Descobrindo Produtos Viáveis
 
O que é inovação?
O que é inovação?O que é inovação?
O que é inovação?
 
GoF Design Patterns - Borland Conference (BorCon) 2004
GoF Design Patterns - Borland Conference (BorCon) 2004GoF Design Patterns - Borland Conference (BorCon) 2004
GoF Design Patterns - Borland Conference (BorCon) 2004
 
O potencial Mobile [GUDAY 2016]
O potencial Mobile [GUDAY 2016]O potencial Mobile [GUDAY 2016]
O potencial Mobile [GUDAY 2016]
 
Lean Canvas
Lean CanvasLean Canvas
Lean Canvas
 
O que aprendemos com o eXtreme Programming e com o mundo Ágil | #XPConfBR 2014
O que aprendemos com o eXtreme Programming e com o mundo Ágil | #XPConfBR 2014O que aprendemos com o eXtreme Programming e com o mundo Ágil | #XPConfBR 2014
O que aprendemos com o eXtreme Programming e com o mundo Ágil | #XPConfBR 2014
 
Aula: Agile Kickstart - Como criar equipes de alto desempenho?
Aula: Agile Kickstart - Como criar equipes de alto desempenho?Aula: Agile Kickstart - Como criar equipes de alto desempenho?
Aula: Agile Kickstart - Como criar equipes de alto desempenho?
 
Causas - Qual é a sua?
Causas - Qual é a sua?Causas - Qual é a sua?
Causas - Qual é a sua?
 
[RS on Rails 2013] Construa um produto. Quando? Neste final de semana.
[RS on Rails 2013] Construa um produto. Quando? Neste final de semana.[RS on Rails 2013] Construa um produto. Quando? Neste final de semana.
[RS on Rails 2013] Construa um produto. Quando? Neste final de semana.
 
Tarefas! O Que fazer?
Tarefas! O Que fazer?Tarefas! O Que fazer?
Tarefas! O Que fazer?
 
#StartupDojo Porto Alegre - Julho/2013 (Nós Coworking)
#StartupDojo Porto Alegre - Julho/2013 (Nós Coworking)#StartupDojo Porto Alegre - Julho/2013 (Nós Coworking)
#StartupDojo Porto Alegre - Julho/2013 (Nós Coworking)
 
Mantra das Possibilidades - AgileBrazil 2013
Mantra das Possibilidades - AgileBrazil 2013Mantra das Possibilidades - AgileBrazil 2013
Mantra das Possibilidades - AgileBrazil 2013
 
JustJava 2013 - Indo para as nuvens?
JustJava 2013 - Indo para as nuvens?JustJava 2013 - Indo para as nuvens?
JustJava 2013 - Indo para as nuvens?
 
Agile KickStart 2 - Escrevendo User Stories
Agile KickStart 2 - Escrevendo User StoriesAgile KickStart 2 - Escrevendo User Stories
Agile KickStart 2 - Escrevendo User Stories
 
Agile KickStart 3 - Planejamento e Dia a Dia de Projeto
Agile KickStart 3 - Planejamento e Dia a Dia de ProjetoAgile KickStart 3 - Planejamento e Dia a Dia de Projeto
Agile KickStart 3 - Planejamento e Dia a Dia de Projeto
 
Agile KickStart 4 - Melhoria Contínua
Agile KickStart 4 - Melhoria ContínuaAgile KickStart 4 - Melhoria Contínua
Agile KickStart 4 - Melhoria Contínua
 
Agile Kickstart 1 - Cultura Ágil
Agile Kickstart 1 - Cultura ÁgilAgile Kickstart 1 - Cultura Ágil
Agile Kickstart 1 - Cultura Ágil
 
Quem é você?
Quem é você?Quem é você?
Quem é você?
 
Agile Transition. PMBOK knowledge areas and how values, principles and agile ...
Agile Transition. PMBOK knowledge areas and how values, principles and agile ...Agile Transition. PMBOK knowledge areas and how values, principles and agile ...
Agile Transition. PMBOK knowledge areas and how values, principles and agile ...
 

Último

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Último (20)

Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 

Just Java2007 - Daniel Wildt - Tools For Java Test Automation

  • 1. Tools for Java test automation Daniel Wildt Software Developer dwildt@gmail.com http://danielwildt.blogspot.com
  • 2. Agenda • Test is a form of art • Agile Methodologies and testing • White box testing techniques (Unit Testing) • Black box testing techniques (Functional) • Ensuring Quality in the test process with Test Coverage • Applying Test Driven Development and Continuous Integration • Final words • References • Links 2 !
  • 3. Test is a form of art • You need to verify development code without seeing it (some times) • You need to ensure that requirements are implemented in the same way they were defined • You need to embrace change (focus on customer) • You need to test faster to deliver faster (short cycles) • You need to apply quality while testing • You need to have a good coverage of source/requirements while testing • You need to be creative while finding spots to test 3 !
  • 4. Agile Methodologies and Testing • Agile Methodologies are based on disciplines and practices that focus on principles like these (from Agile Manifesto principles): • Satisfy the customer as highest priority, through early and continuous delivery of valuable software. • Business people and developers working together daily throughout the project • Measure the progress of a project based on working software, its primary measure • Self organizing teams, motivated individuals, communication and simplicity as strong values • Technical excellence is wanted to enhance agility. • Continuous improvement, to tune and adjust teams to become more effective. 4 !
  • 7. White box testing techniques (Unit Testing) • Source grow together with source • TDD 7 !
  • 8. White box testing techniques (Unit Testing) • Easy integration for Business - FIT 8 !
  • 9. White box testing techniques (Unit Testing) • You don’t have it? Mock! public class ExampleTest { @Before public void setup() { mock = createMock(Collaborator.class); classUnderTest = new ClassUnderTest(); classUnderTest.addListener(mock); } @Test public void addDocument() { mock.documentAdded(quot;New Documentquot;); replay(mock); classUnderTest.addDocument(quot;New Documentquot;, new byte[0]); verify(mock); } } 9 !
  • 10. Black box testing techniques (Functional) • Functional Test Selenium IDE 10 !
  • 11. Black box testing techniques (Functional) • Stress Testing • JMeter 11 !
  • 12. Ensuring Quality in the test process with Test Coverage 12 !
  • 13. Applying Test Driven Development and Continuous Integration 13 !
  • 14. Applying Test Driven Development and Continuous Integration 14 !
  • 15. Final words • Always think about this: Verification X Validation ? • More: check CMMI – Level 3 15 !
  • 17. References • Beck, Kent; Andres, Cynthia. Extreme Programming explained: embrace change. 2ª edition. • Pressman, Roger S. Software Engineering. • Agile Manifesto http://www.agilemanifesto.org 17 !
  • 18. References • Tinkha, Andy; Kaner, Cem. Exploring Exploratory Testing. http://www.testingeducation.org/a/explore.pdf • Scott Ambler essay about FLOOT. http://www.ambysoft.com/essays/floot.html • Ciclomatic Complexity. http://www.sei.cmu.edu/str/descriptions/cyclomat ic_body.html 18 !
  • 19. Links • JUnit – Unit Testing • http://www.junit.org • JMeter – Stress Testing • http://jakarta.apache.org/jmeter/ • Emma – Code Coverage • http://emma.sf.net • Selenium –Functional testing • http://www.openqa.org/selenium/ • PMD – Code Audit • http://pmd.sf.net 19 !
  • 20. Links • CheckStyle –Code Audit • http://checkstyle.sf.net • Easy Mock • http://www.easymock.org/ • FIT • http://fit.c2.com/ • Lunt Build • http://luntbuild.javaforge.com/ • Cruise Control • http://confluence.public.thoughtworks.org/disp lay/CC 20 !
  • 21. Questions? 21 !
  • 22. Thanks! 22 !