Testing and TDD for Java Developers
Developer testing practices are a vital, yet often under-used art. Learning how to write more effective tests is an excellent way to write better designed, more maintainable and more reliable code. It also helps keep development focused on the real requirements, resulting in a higher quality product for the end user. This is a skill that every Java developer needs to master.
This course is an intensive 2-day workshop with a mixture of teaching and lab exercises. You will learn about modern Agile testing best practices such as Test-Driven Development and Behaviour-Driven Development, and how to apply them in your own projects. You will gain practical experience with the latest in open source testing tools, including JUnit 4.7, Groovy, Selenium, SoapUI, and JOLT-Award winner easyb. You will also learn how to refactor code, and how to use code coverage and code quality tools such as Cobertura to isolate poor quality or poorly-tested code. The basic course program is outlined here:
– Principles of Test-driven development and Behaviour-Driven Development
– Understanding the TDD lifecycle
– Agile testing practices
– Modern unit testing techniques with JUnit 4.x
– Writing clearer tests with the Hamcrest assertions
– Using annotations, parameterized tests and JUnit Theories to simplify your tests
– Writing more productive unit tests in Groovy
– Unit and Integration testing
– Using mock objects and stubs with Mockito
– Database testing with DBUnit
– Testing Spring applications
– Behaviour-Driven Development with easyb
– Automating the testing process
– Using test coverage metrics to improve your testing process
– Testing a web interface with Selenium and JWebUnit
– Continuous Testing in Eclipse with Infinitest