![Page 2: Just Java2007 - Daniel Wildt - Tools For Java Test Automation](https://reader034.vdocuments.mx/reader034/viewer/2022042623/5481053a5906b5136d8b45e4/html5/thumbnails/2.jpg)
������������ � ������������ �������� ��������������������� �� ������!� ����� 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
![Page 3: Just Java2007 - Daniel Wildt - Tools For Java Test Automation](https://reader034.vdocuments.mx/reader034/viewer/2022042623/5481053a5906b5136d8b45e4/html5/thumbnails/3.jpg)
������������ � ������������ �������� ��������������������� �� ������!� ����� 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
![Page 4: Just Java2007 - Daniel Wildt - Tools For Java Test Automation](https://reader034.vdocuments.mx/reader034/viewer/2022042623/5481053a5906b5136d8b45e4/html5/thumbnails/4.jpg)
������������ � ������������ �������� ��������������������� �� ������!� ����� 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.
![Page 5: Just Java2007 - Daniel Wildt - Tools For Java Test Automation](https://reader034.vdocuments.mx/reader034/viewer/2022042623/5481053a5906b5136d8b45e4/html5/thumbnails/5.jpg)
������������ � ������������ �������� ��������������������� �� ������!� ����� 5
Agile Methodologies and Testing
![Page 6: Just Java2007 - Daniel Wildt - Tools For Java Test Automation](https://reader034.vdocuments.mx/reader034/viewer/2022042623/5481053a5906b5136d8b45e4/html5/thumbnails/6.jpg)
������������ � ������������ �������� ��������������������� �� ������!� ����� 6
Agile Methodologies and Testing
![Page 7: Just Java2007 - Daniel Wildt - Tools For Java Test Automation](https://reader034.vdocuments.mx/reader034/viewer/2022042623/5481053a5906b5136d8b45e4/html5/thumbnails/7.jpg)
������������ � ������������ �������� ��������������������� �� ������!� ����� 7
White box testing techniques (Unit Testing)
• Source grow together with source• TDD
�����
![Page 8: Just Java2007 - Daniel Wildt - Tools For Java Test Automation](https://reader034.vdocuments.mx/reader034/viewer/2022042623/5481053a5906b5136d8b45e4/html5/thumbnails/8.jpg)
������������ � ������������ �������� ��������������������� �� ������!� ����� 8
White box testing techniques (Unit Testing)
• Easy integration for Business - FIT
![Page 9: Just Java2007 - Daniel Wildt - Tools For Java Test Automation](https://reader034.vdocuments.mx/reader034/viewer/2022042623/5481053a5906b5136d8b45e4/html5/thumbnails/9.jpg)
������������ � ������������ �������� ��������������������� �� ������!� ����� 9
White box testing techniques (Unit Testing)
• You don’t have it?Mock!
public class ExampleTest {@Beforepublic void setup() {
mock = createMock(Collaborator.class);classUnderTest = new ClassUnderTest();classUnderTest.addListener(mock);
}@Testpublic void addDocument() {
mock.documentAdded("New Document");replay(mock);classUnderTest.addDocument("New Document",
new byte[0]);verify(mock);
}}
![Page 10: Just Java2007 - Daniel Wildt - Tools For Java Test Automation](https://reader034.vdocuments.mx/reader034/viewer/2022042623/5481053a5906b5136d8b45e4/html5/thumbnails/10.jpg)
������������ � ������������ �������� ��������������������� �� ������!� ����� 10
Black box testing techniques (Functional)
• Functional TestSelenium IDE
![Page 11: Just Java2007 - Daniel Wildt - Tools For Java Test Automation](https://reader034.vdocuments.mx/reader034/viewer/2022042623/5481053a5906b5136d8b45e4/html5/thumbnails/11.jpg)
������������ � ������������ �������� ��������������������� �� ������!� ����� 11
Black box testing techniques (Functional)
• Stress Testing• JMeter
![Page 12: Just Java2007 - Daniel Wildt - Tools For Java Test Automation](https://reader034.vdocuments.mx/reader034/viewer/2022042623/5481053a5906b5136d8b45e4/html5/thumbnails/12.jpg)
������������ � ������������ �������� ��������������������� �� ������!� ����� 12
Ensuring Quality in the test process with Test Coverage
![Page 13: Just Java2007 - Daniel Wildt - Tools For Java Test Automation](https://reader034.vdocuments.mx/reader034/viewer/2022042623/5481053a5906b5136d8b45e4/html5/thumbnails/13.jpg)
������������ � ������������ �������� ��������������������� �� ������!� ����� 13
Applying Test Driven Development and Continuous Integration
![Page 14: Just Java2007 - Daniel Wildt - Tools For Java Test Automation](https://reader034.vdocuments.mx/reader034/viewer/2022042623/5481053a5906b5136d8b45e4/html5/thumbnails/14.jpg)
������������ � ������������ �������� ��������������������� �� ������!� ����� 14
Applying Test Driven Development and Continuous Integration
![Page 15: Just Java2007 - Daniel Wildt - Tools For Java Test Automation](https://reader034.vdocuments.mx/reader034/viewer/2022042623/5481053a5906b5136d8b45e4/html5/thumbnails/15.jpg)
������������ � ������������ �������� ��������������������� �� ������!� ����� 15
Final words
• Always think about this:
VerificationX
Validation?
• More: check CMMI – Level 3
![Page 16: Just Java2007 - Daniel Wildt - Tools For Java Test Automation](https://reader034.vdocuments.mx/reader034/viewer/2022042623/5481053a5906b5136d8b45e4/html5/thumbnails/16.jpg)
������������ � ������������ �������� ��������������������� �� ������!� ����� 16
Final words
http://www.ambysoft.com/essays/floot.html
![Page 17: Just Java2007 - Daniel Wildt - Tools For Java Test Automation](https://reader034.vdocuments.mx/reader034/viewer/2022042623/5481053a5906b5136d8b45e4/html5/thumbnails/17.jpg)
������������ � ������������ �������� ��������������������� �� ������!� ����� 17
References
• Beck, Kent; Andres, Cynthia. Extreme Programming explained: embrace change. 2ªedition.
• Pressman, Roger S. Software Engineering.• Agile Manifesto
http://www.agilemanifesto.org
![Page 18: Just Java2007 - Daniel Wildt - Tools For Java Test Automation](https://reader034.vdocuments.mx/reader034/viewer/2022042623/5481053a5906b5136d8b45e4/html5/thumbnails/18.jpg)
������������ � ������������ �������� ��������������������� �� ������!� ����� 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/cyclomatic_body.html
![Page 19: Just Java2007 - Daniel Wildt - Tools For Java Test Automation](https://reader034.vdocuments.mx/reader034/viewer/2022042623/5481053a5906b5136d8b45e4/html5/thumbnails/19.jpg)
������������ � ������������ �������� ��������������������� �� ������!� ����� 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
![Page 20: Just Java2007 - Daniel Wildt - Tools For Java Test Automation](https://reader034.vdocuments.mx/reader034/viewer/2022042623/5481053a5906b5136d8b45e4/html5/thumbnails/20.jpg)
������������ � ������������ �������� ��������������������� �� ������!� ����� 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
![Page 21: Just Java2007 - Daniel Wildt - Tools For Java Test Automation](https://reader034.vdocuments.mx/reader034/viewer/2022042623/5481053a5906b5136d8b45e4/html5/thumbnails/21.jpg)
������������ � ������������ �������� ��������������������� �� ������!� ����� 21
Questions?
![Page 22: Just Java2007 - Daniel Wildt - Tools For Java Test Automation](https://reader034.vdocuments.mx/reader034/viewer/2022042623/5481053a5906b5136d8b45e4/html5/thumbnails/22.jpg)
������������ � ������������ �������� ��������������������� �� ������!� ����� 22
Thanks!