Published Sep 3, 2019

366: Test Automation

Dive into the world of test automation with Arnon Axelrod as he delves into mastering coverage metrics, debugging techniques, and acceptance test-driven development. Gain insights into balancing technical and business measures, tackling flaky tests, and optimizing test strategies for enhanced software reliability and efficiency.
Episode Highlights
Software Engineering Radio - the podcast for professional software developers logo

Popular Clips

Episode Highlights

  • Tools & Techniques

    Acceptance test-driven development (ATDD) relies on specific tools and techniques to bridge communication gaps among stakeholders. highlights the challenges of implementing ATDD, emphasizing the need for a cultural shift and practice in writing user stories and acceptance criteria effectively. Tools like Cucumber and SpecFlow facilitate this process by allowing tests to be written in plain English, but they don't guarantee good test practices on their own 1.

    These tools are great and they help to apply acceptance test driven development, or they don't force you to write good tests and to do it really before you implement the code.

    ---

    Despite their benefits, these tools can be challenging to maintain, and Axelrod suggests that the essence of ATDD can be achieved without them if the test code is written in a readable manner 1.

       

    Cultural Shifts

    Successful implementation of acceptance test-driven development (ATDD) requires significant cultural changes within an organization. explains that defining acceptance criteria as test scenarios helps align developers and stakeholders, reducing misunderstandings and focusing development efforts on current needs 2. This approach encourages continuous refactoring and improvement of code design, ultimately leading to high test coverage and maintainability.

    We constantly refactor the code to improve its design. And if we made this process of accepting test driven development from the start, or we caught up with the development and then we continued doing it, so we have near full coverage.

    ---

    By adopting ATDD from the beginning, teams can achieve full test automation coverage, making tests valuable and easy to maintain as they describe business scenarios rather than just technical details 2.

Related Episodes