Inspired by a tweet by the Ministry of Testing last week, I began writing a series about test automation. Mainly, the series discusses areas of test automation where it doesn't work quite as you expected.
That tweet yielded many responses that caught my eye because I've experienced many of those issues myself. I'm willing to bet most of you reading this have experienced them, as well.
Open a dialog with your teammates and stakeholders. Listen to their reasons for putting your efforts on the backburner, and do your best to uncover any deep-rooted fears and hesitation they're not bringing to light. The first article in this series covered how to deal with spending more time fixing your test suite rather than adding improvements.
This article is another reply to the tweet. It covers another common issue that many testing teams face. If your organization is new to the testing game, this problem is most likely the main hurdle you're facing right now.
Articles in this series
- Part 1: Putting out fires instead of advancing your efforts
- Part 2: Your work gets thrown into the void
- Part 3: Automation without the automation
- Part 4: All green, all the time
- Part 5: The need to manually verify automated tests
All five articles are also available in a single PDF for free. Just enter your email in the form below to have it sent straight to your inbox.
Fix some of the most common automated testing issues with this collection of articles from Dev Tester.
Enter your email address to receive a free 37-page PDF with five articles to improve your organization's testing cycle. You will also receive a weekly email with the latest articles posted on Dev Tester.
I know how vital your email privacy is. You will never receive any spam from me, and you can unsubscribe at any time.
Your work gets thrown into the void
This reply provided by Michał Węgrzyn (@MisiekWegrzyn) falls in the "Sad, But True" category:
Imagine that you and your team spent weeks writing a robust test suite for your company's main project. It covers all the significant functionality of the application, giving you a high degree of confidence in the app's stability.
You take that test suite and set it up in a continuous integration system that's part of your team's workflow. This way, whenever the application changes, you can rest easy knowing that your test suite is busy at work, checking things for the team.
After finishing this task, the testing team moves on to another project. A few weeks go by, and after being tied to other work, you decide to check in on how your trusty test suite is doing.
To your shock, you see a broken test suite. Even more shocking is that the failures happened a while back, and no one bothered to correct the issue. You ask the development team what happened, checking if the continuous integration system failed to alert the team.
"Oh, those tests... We disabled the alerts on our Slack channel, it was driving us insane!"
Unfortunately, this story is true for many testers.
Digging deep to find the reasons
It's incredibly frustrating to feel like all the hard work that you're putting in is essentially ignored. Beyond your justified personal feelings, it's worse for the entire team. They're missing out on the benefits of having a robust automated test suite checking their application.
If this is happening in your organization, you need to raise this concern immediately. There has to be a reason why a well-written test suite is shoved off to the side and neglected. It's up to you and your team to figure out why.
In my personal experience, the first reason that pops up is time constrains. It always seems to be the go-to excuse for bypassing testing. It may be justified, such as imminent deadlines for the development of an application. During times of crushing pressure from external sources, teams justify deferring test efforts to a later date.
However, even if the team thinks it's justified, it's a lame excuse. It covers the real reasons why others pushed your tests aside. You need to dig deeper to uncover these potential truths.
The real reasons why people are ignoring your tests
In reality, many teams don't fully understand the value of a reliable test suite. These teams might do automated testing because it's considered good software development practice. But underneath the thoughts of good practices, they could honestly care less about the quality or value that testing provides.
These teams aren't to blame, however. Usually, it's just a lack of knowledge. Maybe most of the team hasn't been part of an organization that values testing, so they don't know how to talk about testing. In other cases, some people have been part of teams with poor testing practices and don't want to get burned again.
Whatever the reason is, if you notice that testing isn't valued in your organization, it's up to you and other testers to demonstrate its usefulness. There are many ways to show this. For example:
- Provide real-life examples of how testing saved the development team from deploying a severe bug to production.
- Show how proper testing saves the organization time and money with early detection of defects, leaving teams with time to do higher-value tasks.
- Remind everyone that quality software, assisted by quality testing, increases confidence with customers by preventing bug-riddled software.
Lack of knowledge is a common issue, but it's not the only one. Don't be surprised if you discover that others have ignored your tests because of the test suite itself.
Your test suite might have problems that surfaced at a later time, like too many flaky tests or a dreadfully slow test suite. Trust can erode rather quickly when no one deals with these situations promptly. Thankfully, fixing an unstable or slow test suite is easier than having to convince others of the importance of testing.
Summary: Open the lines of communication
If your testing efforts within the organization become ignored, don't take it personally. Sometimes, teams don't understand how testing can help their work and instead view it as a hindrance at the first sign of trouble. But don't discard that your tests are a pain point, either.
If the main reason is the lack of understanding about the value of testing, form a plan to demonstrate its value. Come up with real-life examples, case studies, or stories about how testing improves not only your projects but your entire organization.
If the conversation turns into how your test suite is troublesome to manage, hear them out instead of instantly reacting. Listen to the team's pains and struggles with your test suite. Once you have a better understanding of the problems, you can start preparing to address them and make your test suite better for others.
Open a dialog with your teammates and stakeholders. Listen to their reasons for putting your efforts on the backburner, and do your best to uncover any deep-rooted fears and hesitation they're not bringing to light. Understanding why test automation isn't working for you is the first step towards making it work.
Have you felt like others don't take your testing efforts seriously? Share your story in the comments below, and let's figure out how to handle your situation!