Encouraging Developers to Test Their Own Code: A Practical Guide

Encouraging Developers to Test Their Own Code: A Practical Guide

16 July 2024 Stephan Petzl Leave a comment QA

Ensuring high-quality code is a collaborative effort between developers and testers. However, it can be challenging when developers frequently submit code with obvious bugs. This guide provides actionable steps to encourage developers to test their own code before handing it over for QA.

Understanding the Developer’s Perspective

Developers often work based on the requirements provided to them, which may not cover every aspect of the system. It’s crucial to understand that they might not always be aware of the pre-existing requirements that their changes could affect.

Communicate Effectively

Instead of pointing out flaws, offer constructive feedback. For example, you can say, “I’ve noticed a few patches with XYZ-attribute. Typically, I test them with __input and catch a lot of bugs that way.” This approach is less confrontational and more productive.

Setting a Quality Bar

Define a “quality bar” that sets clear expectations for the entire team. This includes setting a defect threshold, such as no severe bugs and a maximum of 10 bugs per developer. When this threshold is exceeded, development should pause to address the issues.

Use Metrics and Focused Testing

Utilize metrics and focused testing to enforce the quality bar. If a particular area is prone to defects, concentrate your testing efforts there. This will help improve the overall quality and make developers more conscious of their testing practices.

Personal Interaction and Diplomacy

Sometimes, a personal touch can make a significant difference. Sit down with the developer, explain the bugs, and discuss the kinds of tests they run. Offer suggestions and encourage them to think about different testing scenarios.

Walkthrough Sessions

Conduct walkthrough sessions where you can discuss the issues and get the developer’s input. This diplomatic approach fosters collaboration and helps identify why certain bugs were missed.

Utilizing Bug Tracking Systems

Documenting bugs in a bug tracking system can be an effective way to provide objective data. This data can support your case when discussing code quality with developers or management.

Objective Data

Use bug counts and other metrics from your tracking system to highlight areas that need improvement. This objective approach can help in making a compelling case for better testing practices.

Addressing Underlying Issues

There could be several reasons why developers are not catching obvious bugs:

  • Pressure from management to deliver quickly
  • Lack of familiarity with the technology
  • Distractions from other responsibilities
  • Misunderstanding of the requirements
  • Belief that high quality is not essential for the deliverable

Understanding these issues can help in addressing the root cause and improving the overall development process.

Leveraging No-Code Test Automation Tools

Tools like Repeato can significantly streamline the testing process. Repeato is a no-code test automation tool for iOS and Android that helps you create, run, and maintain automated tests for your apps. Its ease of setup and use, combined with AI and computer vision capabilities, make it an excellent choice for quality assurance.

For more information on how to integrate Repeato into your testing workflow, visit our documentation page.

Conclusion

Encouraging developers to test their own code requires a combination of effective communication, setting clear expectations, and using the right tools. By fostering a collaborative environment and leveraging automation tools like Repeato, you can significantly improve the quality of your codebase.

Like this article? there’s more where that came from!