InfoQ Homepage Software Testing Content on InfoQ
-
Testing across a Large Number of Inputs with Property-Based Testing
Property-based testing is an approach that involves specifying statements that should always be true, rather than relying on specific examples. It enables you to test functions across a large number of inputs with fewer tests. Every run of a property-based test will use different inputs, which can give you confidence your code works in a general case.
-
How to Improve Testing by Using a Gentle Nudge
Nudging gives us opportunities to positively influence our behavior. Its principles can be applied in testing to increase attention or to enhance the product's quality. Nudging makes use of our biases. This term may cause concern for testers as it poses a risk to delivering useful software. However, scientists have also recognized its potential to positively influence our behavior.
-
Improving Web Accessibility with Semantic HTML and Testing Techniques and Tools
Web accessibility benefits all of us. Designers, developers, and testers can check for web accessibility and can make the web and services more inclusive, for instance by using semantic HTML, following web standards when coding, and testing for web accessibility. Countries are introducing regulations to enforce inclusive standards.
-
Testing Advanced Driver Assistance Systems
Advanced driver assistance systems can have a huge number of test cases. Cutting the elephant into smaller pieces can ensure every bit and piece is tested. A good test environment is essential to be efficient, fast and flexible to cover all required tests to ensure quality. Testers should be involved in the project right from the beginning to avoid task-forces, quality- or delivery problems.
-
Performance Testing Should Focus on Trends
Performance testing starts by setting a baseline and defining the metrics to track together with the development team. Nikolay Avramov advises executing performance tests and comparing the results frequently during development to spot degrading performance as soon as possible.
-
Reliable Continuous Testing Requires Automation
Automation makes it possible to build a reliable continuous testing process that covers the functional and non-functional requirements of the software. Preferably this automation should be done from the beginning of product development to enable quick release and delivery of software and early feedback from the users.
-
Using Data to Predict Future Usage and Increase User Insights
By identifying usage trends, you can proactively adjust load, scaling, and routing to better handle the load on particular parts of the globe when you know it will peak there. Data about how users interact with your application can be used to design future features that better mimic these patterns and ensure that new features have a better chance of solving real user problems and getting adopted.
-
How to Test Low Code Applications
For low code applications there are technical things you don’t have to test, like the integration with the database and the syntax of a screen. But you still have to test functionally, to check if you’re building the right thing. End-to-end testing and non-functional testing can be very important for low code applications.
-
How Measuring Defect Mass Helps to Test Critical Product Areas
Introducing a measurement called “defect mass” helped a project to find the most impacted areas by developments and decide how many tests should be run for each impacted area. Using this measurement together with other KPIs helped them focus their testing. They managed to decrease the number of customer incidents.
-
Adding Security to Testing to Enable Continuous Security Testing
Teams can be trained by security experts to become able to identify areas to add security testing in the test process and add security checks as part of functional test automation. This can lead to continuous security testing where security defects can be spotted at an early stage with higher security testing coverage in every release.
-
Shifting Quality Left with the Test Pyramid
Shifting quality left means building in quality much earlier in the software development cycle, rather than testing for quality after completion of development. Using the test pyramid model, a project was able to move testing towards earlier stages, thereby finding defects that caused integration issues earlier in development.
-
The Challenges of End-to-End Testing of Microservices
Microservices work well with independent teams who have end-to-end responsibility and use an automated CI/CD pipeline. Ensuring software quality through end-to-end testing can conflict with rapidly integrating and releasing software components. If an end-to-end test fails, the CI/CD pipelines of all involved microservices are blocked until the problem causing the test to fail is solved.
-
2021 State of Testing Survey: Call for Participation
The 2021 State of Testing survey aims to provide insights into how the testing profession develops and to recognize the adoption of testing practices and testing trends. The survey is open through December.
-
Introduction to Mutation Testing - Dave Aronson at JSConf Hawaii
Dave Aronson gave at JSConf Hawaii 2020 an introduction to mutation testing. Aronson presented the rationale behind mutation testing, its benefits, drawbacks and pitfalls, and how it works under the hood.
-
Airbnb Transfers Ownership of Enzyme, Its React Testing Library
Airbnb transferred ownership of Enzyme, its React testing library, to the new enzymejs GitHub organization. Airbnb nonetheless plans to continue to use and contribute to Enzyme.