<aside> 💡 Hola friends! We recently created a Discord for Software Automation where we discuss these kinds of topics on a bi-weekly basis.

Responses range from people with 0 to 30+ YOE in the industry and wanted to share this with the community!

</aside>

Abstract Summary:

This discussion focuses on custom tools and solutions developers have created to improve their testing, automation, and development processes. The examples shared demonstrate a wide range of innovative approaches to solving specific challenges in various contexts. Key themes include:

  1. Visual regression testing tools
  2. Automation for legacy or unconventional systems
  3. Service initialization and deployment tools
  4. Access management and permissions automation
  5. Tools for non-technical team members
  6. Environment management and isolation
  7. Game development optimization tools
  8. Workflow improvements and time-saving solutions

These custom solutions often address unique organizational needs or fill gaps in existing toolsets, showcasing the creativity and problem-solving skills of developers.

<aside> 💡 Below are gathered discussions from the Discord as well as /r/softwaretesting and /r/programming, enjoy!

</aside>

Stefan Ayala (basecase) shares:

I made a glorified notification system called TestBeacon (I wish I called it TestBacon though) that would send a Slack message to a channel when a test was failing above a certain % in ALL Continuous-Integration builds.

This helped us tackle flaky tests as we'd get a stacktrace, failure %, and alert all at once which allowed the right person with right context to jump in and fix it all autonomously.

There was also a way for TestBeacon to temporarily Quarantine a test for "x" hours which allows CI to keep flowing while a developer goes in and fixes the test. We all know how easy it is to skip a test and forget about it and we also know how annoying a CI failure can be because of 1 broken test, so this is a nice middle ground 🙂

Again, nothing too crazy but it was useful and it helped spread the automation burden across the team, half the time people would jump in and say "oops, I think I know why" lol.