If you want to start automating your test cases, László Szegedi makes an argument for using the popular Python and Selenium combination. Here, he gives a test script you can use after every release to find any serious regression bugs in the system, to be executed automatically. Integrate it with your existing development pipeline and you get a pretty useful tool for continuous improvement.
If you’re new to automated testing, you’re probably starting off with a lot of questions: How do I know which tests to automate? Why is automated testing useful for me and my team? How do I choose a tool or framework? This article answers a lot of those questions—and gives you some more to consider!—so you have an excellent foundation for beginning your automation endeavors.
Thought leaders from the software community are taking over the TechWell Hub for a day to answer questions and engage in conversations. Michael Bolton, a speaker and thought leader in the testing industry, hosted this Slack takeover, which led to discussions about test exploration, tools, and testers as gatekeepers.
Getting good test documentation is a consistent challenge. Agile proposes that you should go very light on documentation, and while test documentation does not need to be heavy, it does need to be clear and cover all that the product is intended to do so you can ensure testing is consistent and results are recorded. Here's how to overcome some major barriers to getting good test documentation.
A design pattern consists of the pattern name, the problem it solves, how to implement the solution, and some consequences. There are also proven patterns like this that can be used in testing. This article lists and defines many commonly used patterns that can help you solve problems, improve code maintenance, and just make your life easier.
Automation is a service to testing—a tool that may prove to be useful or turn wasteful. When approaching test automation, there are five main areas to focus on, expressed in the acronym TERMS: Tools and Technology, Execution, Requirements, Maintenance, and Security. Here are some examples of how these factors are involved in defining automation success or failures.
Testing evolves, and it becomes clear that some concepts we’re all used to doing are no longer applicable today. It’s important to periodically take stock of our testing practices and cull the ones that no longer make sense—or are downright harmful. Here are three common testing practices it’s in our best interests to stop doing.
The test pyramid is a great model for designing your test portfolio. However, the bottom tends to fall out when you shift from progression testing to regression testing. The tests start failing, eroding the number of working unit tests at the base of your pyramid. If you don't have the development resources required for continuous unit test maintenance, there are still things you can do.
Think about what we do while cooking food to make it the best dish possible. We taste the food first, make necessary adjustments and add a few more ingredients, taste the food again, and repeat until the dish is how we want it. This is just like building a software product. If you don’t taste the food before serving it—or test the software before rolling it out—there will be a risk that the quality isn’t up to your standards.
Continuous operation tests find important bugs, partly as a result of their long operation and partly by increasing the probability of finding statistical bugs. However, CO tests have their own downsides. Mandating a periodic reset or reboot can work around these issues, as well as save time and cost for testing, reproduction, debugging, and fix verification.