Articles

Please enter an article title, author, or keyword
Automation Software Is Production Software

When it comes to testing, there tends to be a differentiation between “production software” and everything else. But our ideas and principles about testing software are true for all software, not merely the code that will run in front of customers or the APIs that make things happen. Any software built for a purpose needs to be tested against that purpose, including the software running our test automation.

Peter Walen's picture Peter Walen
Computer showing fire on the screen Strengthening System Resilience with Chaos Engineering

Testing continuous technological change can seem like chaos. There are many challenges that need to be managed, such as unavailability of power, excessive temperature, incorrect configuration, unexpected behavior of services, network downtime, and processing slowdown in production. By deliberately engineering chaos, we’ll be able to discover many of our systems’ weaknesses before our users do.

Hand placing block in row of blocks with left arrows Fitting In Regression Testing by Shifting QA Left

Fixing a bug in one area of the software may break something in another area. To detect whether defects have been introduced, we need to perform regression testing—executing certain test cases again to see whether a change has affected other existing features. But how do you make time for another testing cycle prior to every production release? You need to get QA involved earlier in the software development lifecycle.

Shuja Naqvi's picture Shuja Naqvi
Smartphone showing the word "ERROR" False Errors in Test Tooling

Traditional GUI automation is linear; it follows a set of steps. The first time you run it, it can't add any value, as the feature isn't done until the automation runs. Once test automation runs a second time, it effectively becomes change detection. This leads to a large number of "failures" that are not actually failures. Whether they are false positives or false negatives, we need a way to fix the automation tooling.

Matthew Heusser's picture Matthew Heusser
Person parasailing 5 Steps to Getting Started with Risk-Based Testing

Risk-based testing is an approach to testing that helps us handle our limited resources. It’s also a valid model for years to come because it focuses testing resources where they can have the most impact—regardless of whether limitations are due to budget, tight schedules, or even the uncertainty of an unexpected situation like COVID-19. Here are some practical tips, examples, and steps you can use to adopt risk-based testing.

Shawn Jaques's picture Shawn Jaques
Bug on a leaf How to Respond to Retest Requests without a Clear Bug Fix

After finding and reporting a bug, a tester may get this response from a developer: "Please rerun the test on the latest version of the code and check if the bug still reproduces." This seems like a rational request; just as a change can cause a bug to appear, it can also fix a bug. But is following up the responsibility of the tester or the developer? And if the bug is no longer there, how do you classify and close it?

Michael Stahl's picture Michael Stahl
X-ray of a computer's motherboard X-ray Vision and Exploratory Testing

Imagine you have X-ray vision. Instead of seeing through walls, you can see the inner structure of programs, the bugs lying inside, and how to expose them. Anyone could execute the steps you gave them to reproduce the bugs. The difficulty in testing, then, is not in executing steps; it is figuring out what steps to take. How do you find those hidden bugs? We need to be the X-ray vision.

Nicholas Snogren's picture Nicholas Snogren
Breaking through a fence to see cars speeding on a road Enterprise Test Automation: 4 Ways to Break Through the Top Barriers

How can mature companies with complex systems achieve the level of test automation that modern delivery schedules and processes demand? There are four strategies that have helped many organizations finally break through the test automation barrier: Simplify automation across the technology stack, end the test maintenance nightmare, shift to API testing, and choose the right tools for your needs.

Wolfgang Platz's picture Wolfgang Platz
Person holding a dollar bill The Hidden Costs of Automation

While automation can help you save time and money in your testing activities, there are a few hidden costs that many teams overlook. Aspects that don't have a price tag initially—such as what it will take to learn, adopt, and maintain a new automation tool—will end up costing you in the long run. Think through these considerations and answer some questions before jumping into your automation initiative.

Ajay Balamurugadas's picture Ajay Balamurugadas
Timelapse photo of cars speeding down a road How to Accelerate Your Release Cycles with Agile Testing

With the traditional waterfall method of testing, achieving quality and faster time to market is difficult. Agile testing has emerged as an alternative, where development and testing take place simultaneously instead of operating in their respective silos. Let’s look at what it means to perform agile testing, what practices are necessary, and how agile testing can benefit your software releases.

Akshaya Choudhary's picture Akshaya Choudhary

Pages

Upcoming Events

Jun 02
Sep 22
Oct 13