Software Testing Articles, Blog Posts, Books, Podcasts and Quotes
Your team has some test data. Let’s say you loaded in a backup form production a few months ago. Your QA specialists are familiar with the data, but your software developers hate it. They keep telling you, “It is not the right data,” or, “It is not very useful for testing.” You let them write and automate some tests, but it is not enough.
Most of the time, software testing is based on comparing the actual behavior of a code or a system with its expected behavior. In his article “The Challenges of Testing in a Non-Deterministic World”, Donald Firesmith explains however that not all software and systems are deterministic, for instance an autonomous adaptive vehicle that uses machine learning software, and that software testing needs to adapt to this context.
In his preface of the book “Common System and Software Testing Pitfalls”, Donald G. Firesmith writes “You can think of this book as a catalog and repository of testing antipatterns: the pitfalls to avoid, how to mitigate their negative consequences if you can’t avoid them, and how to escape from them once you’ve fallen in. Like a naturalist’s field guide to wild animals, let this be your guidebook to the dangerous world of testing mistakes and its denizens – the many creative ways people have discovered to botch testing.”
Good test data management is one of the best practices of successful software quality assurance, especially when you perform integration and functional testing for large systems. In this article, Christian Meléndez discusses important topics associated to test data management like how much data do you really need, how to deal with data privacy concerns, test data as self-service and test data generation.
There are still many people questioning the value of unit testing, and even more for the Test-Driven Development (TDD) approach. In this article, Krzysztof Jelski shares with us five metrics that should improve with the adoption of this agile practice for software development and testing.
Approval Testing is an approach to software testing that focuses on capturing and storing the behavior of your application, presenting the changes in behavior and allowing the software development team to react to them.