The latest News and Information on Software Testing and related technologies.
The ultimate goal of writing tests should be improving the user’s in-app experience and increasing developers’ confidence in shipping new or improved apps. The Mattermost team has been continuously writing different types of tests to improve the product. Such extensive automated testing has enabled them to ship a new release—with new features and improvements—every single month for the last few years. Thousands of developers contribute to the codebase.
Today, we hope to make testing Absinthe a bit easier for you. We believe that it’s a great library for writing GraphQL applications, but if you previously haven’t done much work on an Absinthe application, you might find some things a bit tricky to test.
After weeks of writing, researching and hopefully enough proofreading, we just launched a living collection of practical guides on leveraging headless browser tools (starting with Puppeteer and Playwright) for testing, monitoring, scraping, performance measuring and more. We called it theheadless.dev. This article is about the different approaches we tried in contributing ideas to the Puppeteer community, as well as the principles that guide our latest contribution.
Few things are more frustrating than slow, flaky test suites. You're ready to deploy, wait 20 minutes for CI to run, only to find that a test failure in code you've never touched is blocking you. You dig into the source and find the problem: an external API call. It works (slowly) most of the time. But sometimes the network glitches and it fails. What do you do? In this article, José Manuel shows us several techniques for removing external API dependencies from our tests.
In January 2020, the UK recorded its first case of COVID-19. The world was facing the unknown, and the only apparent way to contain the virus was for every nation across the planet to shut down. As governments across the globe planned for the unknown, organizations rapidly began seeking ways to support efforts to save lives and restart the economies of these countries. One such endeavor was the vital role technology could play in contact tracing.
It’s been more than a year-and-a-half since we started using Cypress for our automated functional testing, and it has been well worth the investment. Cypress has now become an essential part of our process to automate regression testing, which helps us ship new releases faster, with increased quality.
In Part 1, we looked at some best practices for getting started with creating effective test suites for critical application workflows. In this post, we’ll walk through best practices for making test suites easier to maintain over time, including: We’ll also show how Datadog can help you easily adhere to these best practices to keep test suites maintainable while ensuring a smooth troubleshooting experience for your team.
Here at Mattermost, our team of developers and quality assurance analysts are proud of what we build and work hard to ship a quality product on the 16th of each month. However, maintaining our high bar for quality month over month isn’t without its challenges!