InfoQ Homepage Testing Content on InfoQ
-
How We Built Testability with Psychological Safety
Testability can enable teams to make changes to their code bases without requiring extensive regression testing. To build testability, team members must collaborate and leverage each other's unique skills. Unfortunately, effective collaboration does not come naturally to people and therefore needs leadership to nurture people's ability to speak up and share their knowledge.
-
Moldable Development: Guiding Technical Decisions without Reading Code
Developers spend most of their time reading code. Moldable Development challenges reading as a means to gather information from the system, by creating custom tools that show the problem in a way that makes it comfortable to understand. The solution typically follows quickly afterward. Glamorous Toolkit is a moldable development environment designed to decrease the cost of custom tools.
-
POCs, Scrum, and the Poor Quality of Software Solutions
POCs and Scrum can play a critical role in implementing Quality software solutions. Poor quality often starts with a POC that was prematurely turned into the development pipeline. Scrum short sprints often create an environment most conductive to working reactively to constantly-changing requirements making it hard for developers to prioritize and achieve Quality over the course of the project.
-
Open-Source Testing: Why Bug Bounty Programs Should Be Embraced, Not Feared
The growing importance of the Web3 ecosystem based on blockchains shows how important community test programs are. Some within the testing community see this trend as a threat. However, it is actually an opportunity. Bug bounties and open-source test contributions are a great tool for test teams, and there is every reason for testers to embrace this new trend rather than to fear it.
-
Exploring Architectural Concepts Building a Card Game
One of the things I missed during the pandemic were my friends, the possibility to meet them, discuss with them and, why not, play cards with them. So I decided to implement an app to play Scopone with my friends and, at the same time, test “in the code” some architectural concepts which had been intriguing me for some time.
-
Using Machine Learning for Fast Test Feedback to Developers and Test Suite Optimization
Software testing, especially in large scale projects, is a time intensive process. Test suites may be computationally expensive, compete with each other for available hardware, or simply be so large as to cause considerable delay until their results are available. The article explores optimizing test execution, saving machine resources, and reducing feedback time to developers.
-
Remote Ensemble Testing - How an Experiment Shaped the Way We Work
This article shares how an experiment evolved into a common practice at the workplace, using an experimental approach with remote ensemble testing to get teammates on our cross-functional team more involved in the testing activities of the jointly created product. This all started in the times of a global pandemic where the entire team was working from home.
-
Solutions for Testing Blockchain: Private Blockchains, Permutations, and Shifting Left
Blockchain is an emerging software architecture that has the potential to be a big disruptor in the industry. With change however, comes the added risk of quality issues. As developers and test engineers, we need to be prepared for those changes to better adapt to the new technology and allow for the continued development of software and products through it, without compromising on quality.
-
Using API-First Development and API Mocking to Break Critical Path Dependencies
Teams are using API mocking to break critical path dependencies and enable what were serial execution sequences into parallel paths. This article looks at where mocks should be used for the greatest impact and provides a model to estimate the effect of implementing API mocking and an API-first approach.
-
Are Canary Releases an Alternative to Testers?
Canary releases enable product owners to check how a new feature is getting adopted by users by rolling it out to a small percentage of users and then incrementally rolling it out to a wider audience. Product owners might feel tempted to discontinue or reduce testing upon adopting canary releases, but decisions should be approached cautiously as they can have serious and unintended consequences.
-
The Fundamentals of Testing with Persistence Layers
Mocking out dependencies such as databases and other persistence layers leads to ineffective tests. Unfortunately, our industry is also focused on function-level testing to the exclusion of all else, so few are trained on how to write any other type of test. This article seeks to correct the issue by reintroducing the concept of testing with databases.
-
Improving Speed and Stability of Software Delivery Simultaneously at Siemens Healthineers
In this article, we focus on the software delivery process at Siemens Healthineers Digital Health. The process is subject to strict regulations valid in the medical industry. We show our journey of transforming the process towards speed and stability. Both measures improved at the same time during the transformation, confirming research from the “Accelerate” book.