Escolar Documentos
Profissional Documentos
Cultura Documentos
patrick.kua@oracle.com
Australian Development Centre
Brisbane, Australia
Aims
Unit Testing vs Traditional Testing
Benefits of Unit Testing
Introduction to xUnit (using JUnit)
frameworks
Advanced Unit Testing Strategies
Traditional Testing
Test the system as a
whole
Individual
components rarely
tested
Errors go undetected
Isolation of errors
difficult to track
down
Print Statements
Use of Debugger
Debugger Expressions
Test Scripts
Unit Testing
Each part tested
individually
All components
tested at least once
Errors picked up
earlier
Scope is smaller,
easier to fix errors
Isolatable
Repeatable
Automatable
Easy to Write
Faster Debugging
Faster Development
Better Design
Excellent Regression Tool
Reduce Future Cost
Unit Tests
JUnit (www.junit.org)
Java-based unit
testing framework
Elegantly simple
Easy to write unit
tests
Easy to manage unit
tests
Open source = Free!
Mature Framework
De facto java
standard
Ant integration
Generic testing
framework
EJB Components
HttpUnit, Cactus
Artima
Time to set up
Testing of non-java objects difficult
assertTrue
assertEquals
fail
Assert
<Test>
run(TestResult)
TestCase
setUp()
tearDown()
TestSuite
run(TestResult)
TestSuite
TestDecorator/TestSetup
Failures vs Errors
JUnit is Easy
test
oracle
apps
ctb
Executed line
Bugs
New Functionality
Continuous Integration
Local and remote development
Conclusion
Unit testing adds enormous value to
software development
JUnit makes testing java programs easy
Advanced Unit Testing Concepts
Questions?