Agile testing tutorials and how to content : Test-Driven Development (TDD), Behavior-Driven Development (BDD) and other agile approaches for software testing.
Behavior-Driven Development (BDD) is an Agile approach that mixes requirement gathering, documentation and acceptance testing. You write human-readable sentences describing the features of your application and how they should work. Then you implement this behavior using a tool that produces automated acceptance tests to verify that the feature is implemented correctly. Open source .NET BDD tools like SpecFlow are used to store the requirements as live documentation and to perform functional or acceptance tests.
This tutorial presents how to do Test-Driven Development (TDD) for a Spring Boot application and how some of the latest Spring Boot annotations and utilities make that easy. Ever wonder how to test a hard problem like caching or write an integration test without making an external API call? Or come across a situation where testing something was so hard that it never got tested?
There is a lot of talk in modern software testing teams about experimentation. Classically an experiment is a very structured series of activities designed to find something out. Sounds a lot like software testing and is in direct alignment with the concepts around Test-Driven Development (TDD), Behavior-Driven Development (BDD) and Acceptance Test-Driven Development (ATDD). This video discusses how to design testing experiments that are valuable and provide the right insights to the right people, at the right time.
When a software development team switches its approach to an Agile framework like Scrum, the place of software testing changes. In his book Scrum Product Ownership, Robert Galen describes the new role of software testers in Agile teams and their relationships with the product owners.
Doing software testing in production used to be taboo – a sign that you had a lax attitude to QA. Now it is increasingly accepted that the opposite is true, and that if you only test your system in artificial environments you don’t really know it works. This presentation shows the tools and techniques used to test feature functionality, performance, and failure scenarios in production.
Shift Left Testing is the name applied to the Agile concept to shift the software testing activities from the end of the software development life cycle to its beginning, or on the left of life cycle diagrams. In his article “Four Types of Shift Left Testing”, Donald Firesmith of the Software Engineering Institute discusses the importance of shift left testing and defines four different approaches to implement shift left testing.
Software testing can be an isolated activity. While some project activities are done in a team, test execution is typically performed alone. However the concept of pair programming, a well-known practice of eXtremme programming and Agile software development, can also be applied to software testing. This presentation explains how TradeMe pairs testers to remove silos, passively educate, and increase the efficiency of testing.