Software Testing Tutorials and Videos

Techniques such as Test Driven Development, and more recently, Behavior Driven Development are well known. Yet, you still hear conflicting stories about unit testing. Some claim that introducing a lot of unit tests can hamper development, or that those tests are a maintenance problem on itself. To a limited degree I agree, but isn’t that true for all software that is not been well though off? An important reason for this is that unit tests not always seen as being part of the production code. Read more

This session gives you an idea of the kinds of design changes you need to make to improve the testability of your system through a demonstration of legacy refactoring techniques targeted at getting business logic out of UI code.

Testing is a fundamental part of the Agile process. We live and breathe TDD/BDD. Red/Green/Refactor is our daily mantra. We love cucumber and writing executable, customer readable specifications. We even write tests for our JavaScripts. And yet, testing remains hard. The tests we love to write are brittle and tend to break when we refactor. Although we talk about the tests being the specification of our code, too often they specify “how its implemented” rather than “what should be done”. This talk is about how to improve the way we do testing, how to move away from merely specifying how our software is implemented to capturing the true essence of how it should function.

Badly written tests are a nightmare of many agile projects. Hard to understand and maintain test suite sometimes act as a brake on introducing changes. This presentations discuss basic techniques of refactoring test code. During live coding session you will see how to simplify non-readable tests in few simple test and, among other things, various ways of creating test data, expressing assertions and avoiding duplication in tests.