7 Software Testing Best Practices No One Talks About

software testing best practices

What happens if your email isn’t working like it’s supposed to or your DVR skips out on your favorite show? Let’s just say, you won’t be happy. In all seriousness though, issues in software used throughout fields like healthcare, public safety and banking can cause monumental — financial and even life or death — problems. So whether it’s something as trivial as a DVR or as critical as first responders’ GPS systems, the quality of the software we use everyday and the value it delivers comes down in large part to the quality of the testing it must pass before it hits the market.

Although testing wasn’t always seen as such a pivotal piece of the software delivery process, a lot has changed. We may not even give a second thought to software that works as it should, but when something goes wrong, we care quite a lot. Consider the fact that the stock price for companies experiencing a news-making software failure fell about four percent on average in 2015. With that in mind, it’s no surprise that companies spend over $300 billion per year debugging their software or that the role of QA Manager has become an increasingly lucrative career path.

So if you want to become a top-notch tester and help ensure only the highest quality software falls into the hands of users, what do you need to know? Read on for insights from the testing experts at QASymphony.

7 Software Testing Best Practices to Help You Become an All-Star Software Tester

Moving beyond the checkmark to become a truly all-star software tester isn’t necessarily about tools or even skills (although you definitely need strong skills) — it’s all about the intangibles. With that in mind, embracing the following habits can help you build on your skills to get to the next level.

1) Keep an Eye on the Bigger Picture (aka the User Experience)

The number one thing that all top notch testers have in common is their laser focus on the user experience. It’s far too easy for testers to get lost in the weeds of test cases and forget about the actual end user, however this is a fatal mistake.

What sets the very best testers apart from the pack is that they never lose sight of why they’re conducting testing in the first place, and that means putting user interest first. These testers understand that testing best practices aren’t necessarily things to check off a list, but rather steps to take to help deliver a better end product to users.

The very best testers never lose sight of why they’re conducting testing in the first place, and that means putting user interest first.

To become such a tester, you need to always consider software from the user’s perspective and take into account how the software needs to work in order to deliver on the promise of helping users do something better, faster and easier in their daily lives. You also need to recognize that the user experience isn’t just about a person going through different steps, but rather using software to improve something they do day in and day out.

2) Ask Questions

In order to keep an eye on the bigger picture and test with the user experience in mind, you need to ask questions and lots of them. Testers have a reputation for asking questions, and it often comes across as them trying to prove something, but there’s actually an important reason why the best testers ask so many questions. It’s because you need to have a complete understanding of a piece of software — including who its users are, how they will use the software, what problem the software should solve, how it should solve that problem, how it should look and feel, etc. — in order to properly test it.

After all, how can you uncover and diagnose issues with a piece software if you don’t fully understand who it’s supposed to serve or how it’s supposed to function? You can’t. As a result, asking questions to make sure you know everything you need to know and then some about all of these relevant points is essential to software testing. And it’s those testers who have a comprehensive understanding of all of these points that uncover issues that most testers miss simply because they don’t know enough about the users and the software itself to know that they’re issues that need to be addressed.

Asking questions to make sure you know everything you need to know about all of these relevant points is essential to software testing.

3) Practice Good Test Management and Reporting

software testing best practices - reportingDuring testing, how do you answer questions like what does your progress looks like, where do roadblocks exist and what is the overall feel of results? It comes down to test management and reporting. And practicing engaged test management and reporting is another trait that separates the all-star testers from the pack.

Good test management and reporting adds value to the overall testing process by encouraging and mentoring individual testers as needed, identifying challenges that might impede progress and providing a bridge between developers and testers. Additionally, taking reporting seriously and regularly checking in with the data can help improve things like test coverage, velocity and quality assurance by providing actionable insight on risk, progress, results and more.

Great reporting starts with an understanding of the right test metrics. Read the essential guide to improving software quality with data and analytics.

4) Recognize Testing Isn’t an Island

Silos between developers and testers (not to mention product owners) don’t help anyone. These silos create disconnects when it comes to understanding the intended purpose, functionality and audience for software, limit productivity as one team waits for the output of another and inhibits each group’s ability to properly diagnose and resolve issues.

software testing best practices - effective testing teams

By working closely with developers and any other stakeholders, testers can take a big step toward eliminating these challenges. For example, testers who work side by side with developers who are writing new code can help identify surface level problems before they even come to fruition and write better test cases that can ultimately diagnose deeper level issues that otherwise would be unlikely to come out until the software got in the hands of users. Additionally, by paving the way for higher quality initial builds, this collaboration also boosts productivity and helps teams meet the demands of faster release cycles.

5) Adopt a Technical Mindset

Breaking down silos leads to several benefits, but it also puts new demands on testers as they move from finding surface-level problems to uncovering deeper, more technical issues. That’s why the very best testers follow up collaborating with developers by adopting a more technical mindset.

The very best testers follow up collaborating with developers by adopting a more technical mindset.

As a tester, taking on a more technical mindset allows you to work even closer with developers, run the tests required to catch deeper level issues and fulfill modern testing requirements faster. Testers with more technical capabilities often help the delivery team by debugging software and offering solutions, as well as setting up automated tests for new software. In general, important technical skills to build include an understanding of JavaScript, a mastery of SQL and even the ability to write production quality code.

6) Build Credibility with Business Stakeholders

software testing best practices - stakeholdersWhat happens after you triage issues uncovered during testing? You need to present your case to business stakeholders, which often involves lengthy meetings during which you need to argue for why fixing one bug should take precedent over another. But couldn’t your time as a tester be better spent? Of course it could. And it can be if you build a high level of credibility with business stakeholders.

While it takes time, if you can gain your stakeholders’ trust and get them to view you as an expert, they will begin to respect your judgment more and question your recommendations less. In turn, this credibility allows you to be more productive and add more value to the business overall. Additionally, it paves the way for the business to not just accept your judgments, but to come to you with questions and seek out your opinion, which is the hallmark of a truly all-star tester.

Showing the right metrics builds credibility with stakeholders. Read “64 Test Metrics For Measuring Progress, Quality, Productivity & More!”

7) Always Keep Learning

Lastly, as the field of software testing changes and evolves, only those who stay on top of what’s happening can sustain the status of an all-star tester. As a result, this regular effort to expand your knowledge is important whether you’re just starting out in software testing, working to become an all-star tester or maintaining your position of excellence.

Furthermore, regular efforts to keep learning by engaging with experts online, taking courses, attending conferences etc. can also help you make connections that are important for career advancement and build a reputation as a thought leader yourself.

Continue learning by reading “Functional Testing Types – 25 Best Practices, Tips & More!”

Stay Ahead of the Game: Top Resources for Ongoing Insight

Software development and testing is a field in constant evolution, and that means you need to regularly expand your knowledge to keep on top of changing practices. Additionally, this ongoing education can help you continue to advance your knowledge and become a true leader in the field. To expand your knowledge, we recommend:

Following Industry Blogs, Podcasts and Thought Leaders

Following relevant industry blogs and thought leaders (via social media, RSS feed or simply by checking their pages regularly) is a quick and easy way to keep up with evolving trends and learn new tricks of the trade. As you get started, we recommend taking a look at the following:

Blogs

  • QASymphony: If you found this advice useful, check out the QASymphony blog for even more tips, tricks, best practices and advice. Visit | Subscribe | Follow on Twitter
  • James Bach’s Blog: Honest answers to many user-submitted questions from testing leader James Bach, who developed session-based testing. Visit | Follow on Twitter
  • QA Journal: Unique and entertaining posts from independent QA software and testing services provider TestFort. Visit | Follow on Twitter
  • Clearvision: Insight on topics like Agile, ALM, Atlassian and GIT from UK-based software development company Clearvision. Visit | Follow on Twitter
  • Quality Remarks: A collection of thoughts and experiences on how to best improve and manage software testing from industry veteran Keith Klain. Visit | Follow on Twitter

Podcasts

  • Hanselminutes: Offers new developers an inside look through 30 minute interviews with “movers and shakers” in the field. Visit
  • software best practices - herding codeHerding Code: Brief episodes hosted by a panel of experts who offer incredible depth on a variety of software development topics. Visit
  • JavaScript Jabber: Hour-long panel discussions on topics covering JavaScript and beyond, including front-end development and careers. Visit
  • NodeUp: An irreverent and entertaining take on subjects relating to Node.js. Visit
  • Partially Derivative: Entertaining and enlightening episodes on all things related to data science. Visit
  • Ruby Rogues: Panel discussions featuring notable programmers on Ruby-related topics. Visit
  • Shop Talk Show: Hour-long informative sessions on front-end web design, UX and development. Visit
  • Software Engineering Radio: A large library of educational episodes on all things related to software development and engineering. Visit
  • Talk Python to Me: A casual podcast ideal for learning more about Python, AngularJS, DevOps and MongoDB. Visit

Thought Leaders

  • Clarke Ching: An expert on Agile and the Theory of Constraints and the author of several unique books on Agile. Visit Site | Follow on Twitter
  • Jeff Atwood: A StackExchange cofounder whose blog Coding Horror covers software development, security, the people behind it all and more. Visit Site | Follow on Twitter
  • Scott Hanselman: A software expert who blogs and podcasts on everything from coding and technology to software development and culture. Visit Site | Follow on Twitter
  • Kevin Rutherford: A seasoned professional who blogs about a variety of topics from Agile and Ruby to hexagonal architecture. Visit Site | Follow on Twitter
  • Eric D. Brown: A tech consultant and data science expert who has found a niche talking about the intersection of technology, data and marketing. Visit Site | Follow on Twitter
  • Jared M. Spool: Author of UIE Brainsparks, a site with blog posts, podcasts and more on topics related to UI and UX development. Visit Site | Follow on Twitter
  • Michael Bolton: Co-Author of Rapid Software Testing and the DevelopSense blog who provides consulting, training and coaching for testers. Visit Site | Follow on Twittersoftware testing best practices - keith klain
  • Keith Klain: Author of the Quality Remarks blog and an experienced software testing coach who focuses on empowering testers. Visit Site | Follow on Twitter
  • Kevin Dunne: One of QASymphony’s resident software testing experts and a strong advocate for improving the role and visibility of testing. Visit Site | Follow on Twitter

Developing and Sharpening Skills Through Key Courses

Even once you’ve made it as a tester, there are several steps you can take to develop new skills or sharpen existing ones in order to stay at the top of your game and advance your career. Often times the best way to hone these skills is through relevant courses, whether online or in person. We recommend the following:

Learn to Code

Coding is quickly becoming one of the most valuable skills to have in the technology world. For testers, it’s becoming increasingly important as testing and development become more closely intertwined. In general, knowing how to code can open a lot of doors for you career-wise and is simply not a skill you will regret learning.

There are several coding boot camps, academies and online learning communities that can help you becoming a coding master. Some of our favorites include:

Boot Camps and AcademiesOnline Learning Communities


Software Testing Certifications

Going through the certification process not only boosts your skills and knowledge, but also helps drive career growth. A certification can signal to both potential and current employers and coworkers that you have reached a certain level of experience and have a specific skillset.

With various levels of certifications available from the Quality Assurance Institute (QAI) and the International Software Testing Qualifications Board (ISTQB), the options are plentiful.

Agile Certifications

As Agile methodology remains among the most popular approaches to software development, having an Agile certification can go a long way toward helping elevate and expand your role within projects.

Certifications to consider include those from the Scrum Alliance and the Project Management Institute (which include both general project management and Agile specific options) as well as those from newcomers ICAgile and Scaled Agile.

Expanding Your Network and Sharing Ideas at Conferences

Attending industry conferences not only gets you out of the office, but it’s also a great way to meet face to face with testers encountering the same challenges you are. Conferences also tend to be jam-packed with expert advice, making them an excellent resource for beefing up your skills, learning new things and networking with thought leaders directly. Here our some of our favorite software testing conferences:

  • Atlassian Summit: Summit has gained a cult-like following of developers and testers from around the world. It focuses mainly on Atlassian products and covers topics related to DevOps, software testing, Agile methodologies and collaboration. Atlassian will also host a second Summit, its first in Europe, in 2017. Visit Site
  • STAREAST: One of the longest-running software testing conferences, STAREAST is a week-long event with learning sessions, networking opportunities and a technology expo. It also has sister events, STARWEST and STARCANADA. Visit Site
  • software testing best practices - quality jamQuality Jam: QASymphony’s own two-day event that brings together technology thought leaders, executives and practitioners from all over the world to provide insight on how to work smarter, faster and deliver higher quality software. Visit Site
  • Better Software West: Held in conjunction with host Techwell’s Agile Dev conference and DevOps conference, the Better Software conference focuses on the entire development lifecycle. It also has a sister conference, Better Software East. Visit Site
  • Agile: The AgileAlliance’s annual conference dedicated to advancing Agile principles and bringing the Agile community together to develop new skills and ideas. Visit Site
  • STPCon: A top conference focusing on test leadership, management and strategy. In addition to leadership and management, STPCon also covers topic like Agile testing, performance testing and test automation. Visit Site
  • QUEST: A large event featuring a tools and services expo, classes, hands-on workshops, discussion groups, tutorials, networking events and more. Visit Site
  • Agile Testing Days: Rated the best Agile software testing event in Europe and the second best Agile conference worldwide, Agile Testing Days brings together software testing experts, QA professionals and Agile leaders. Visit Site
  • TestBash Brighton: A two-day event packed with talks and workshops hosted by industry leaders Michael Bolton, Richard Bradshaw, Mark Winteringham and Dan Ashby. Visit Site

Ready for More? QASymphony Has Your Back

If you’re hungry for even more software testing and development knowledge, QASymphony has your back. Whether you need expert advice, are searching for the right tools for the job or just want to hear about the latest trends in the industry, we have you covered.

We’ll help you keep a pulse on all things testing through our:

  • Blog: Updated multiple times a week, our blog shares quick insights and actionable tips from our team of experts
  • Extensive resource library: With infographics, webinars, eBooks, data sheets, videos and more, you could get lost in here
  • Quality Jam: Our annual user conference brings together the brightest minds in the industry to talk about the future of software quality, help you brush up on some skills and of course have some fun along the way
  • YouTube: Our collection of videos on everything from software testing education to product announcements and demos to customer stories
  • Product Training: Detailed training videos, user guides and support documents for the qTest platform

4 comments on 7 Software Testing Best Practices No One Talks About

  1. Datametric says:

    useful blog! thanks for sharing

  2. I hope software testers review these pointers. It’s frustrating when you purchase software only to run into glitches that should have been ironed out at beta. I know it’s impossible to iron out all the bugs, but I’m amazed at the number of products rushed out where it’s obvious they didn’t run the right tests.

  3. I think item 3 (practice good test management and reporting) is arguably the most important practice. There are so many details you need to monitor in software testing so you need a well-organized system in place and a way to review things easily. The adage measure twice, cut once applies here as you want to ensure your testing system is flawless. Impossible? Perhaps, but it’s something to strive for.

  4. Geoffrey Barnes says:

    Great content on the guidelines to becoming a great software tester. BUilding credibility with the business stakeholders was indeed a great idea to enhance ones experience.

Leave a Reply

Your email address will not be published. Required fields are marked *

More Great Content

Get Started with QASymphony