There's no one right way to test your code
A discussion on why there's no single correct way to write tests, challenging the dogma around unit testing and TDD.
A discussion on why there's no single correct way to write tests, challenging the dogma around unit testing and TDD.
A practical guide to Test-Driven Development (TDD), explaining the red-green-refactor cycle and when it's most beneficial to use.
Explains the importance of frontend testing for user experience, team confidence, and preventing production bugs in non-trivial applications.
Argues against clearing the database between automated tests, citing speed, correctness, and parallelism benefits.
A survey analysis on how the practice of Specification by Example has evolved over the decade since the author's book, focusing on its impact on product quality.
Explains why you should make your tests fail to ensure they are actually testing the intended functionality and not giving false confidence.
A software testing professional reflects on keynoting at Selenium Conference seven years after first attending, discussing the evolution of test automation.
Introduces the S.A.C.R.E.D mnemonic for creating stable, deterministic automated software tests, covering state, actions, assertions, reporting, execution, and determinism.
A reflective article exploring the philosophical and practical challenges of preventing software bugs, questioning what 'prevention' truly means.
A look at the current state and future predictions for test automation, including trends like multi-layer testing and self-healing tools.
A guide on shifting testing focus from code coverage to use case coverage to build confidence in applications.
A psychology graduate turned QA team lead shares how psychological principles like understanding user motivation improve software testing.
Argues that code coverage is a flawed metric for software quality, comparing it to IQ tests, and demonstrates its limitations with examples.
An article explaining the fundamentals of software testing, from basic assertions to advanced frameworks, and how to build your own testing tools.
The author explains how automated testing saves time and builds confidence in software development, based on personal experience.
Explains the importance of the 'refactor' step in the Test-Driven Development (TDD) 'red, green, refactor' cycle for writing better code.
Explains the concepts of Continuous Delivery and Continuous Deployment pipelines, focusing on automated testing and artifact promotion stages.
A guide to using and customizing JUnit 5's @Enabled and @Disabled conditions for conditional test execution.
Introducing the 'Automation in Testing' (AiT) mindset, a human-centric approach to using automation to support software testing activities.
An introduction to Test Driven Development (TDD), explaining its core principles, the Red-Green-Refactor cycle, and the author's personal experience with it.