Enhancing your QA process: Part 2 - testing best practices & quality assurance strategies

Anton Bravin
Updated on
Apr 22, 2024
reading time
Try now

With good traceability, you get a clear picture of what requirements your test cases cover. Configurations, environments, and variables provide simple scalability for your testing. The shift left approach mitigates the risk of expensive defect occurrence at the final stages of your project. The second article following Zebrunner’s team webinar “Manual QA: Identify and fill the gaps in your testing process” is dedicated to these topics. The first article is available here.

How to build requirements traceability

“Link your test cases with documentation. This way your test cases get good traceability. In addition, you see what requirements your test cases cover”, recommends webinar speaker Dmitry Kostrykin, senior QA engineer at Solvd

What to map on a test case level

User stories. They specify & carry the exact acceptance criteria of stories and test cases.

Design. You can link to Figma, InVision, or any other design tool. 

Architectural documents. They describe how your application works or how specific functionality works. 

Bug tickets. There are two directions on how bugs can be linked with test cases. The first one is when you have a test run, and execute some test cases, they fail and you see some bugs. Link these bugs to the test run and milestone. This approach provides a clear picture of your testing success and helps in reporting to stakeholders. The second direction is when you face a critical issue. You want to mitigate it. To reach this aim, you create a test case to validate this specific bug separately. 

Zebrunner Test Case Management gives opportunity to visualize requirements traceability. You can do it in different ways:

  • Set the entire URL.
  • Specify ticket ID. This way can be useful for bug ID or user story ID.
  • Set a meaningful name. 

Test configurations, environments, and variables

Configurations, environments, and variables are components of test parameterization. It provides simple scalability and eliminates the possibility of errors when writing test cases multiple times.

Test configurations are combinations of different operating systems, browsers, and devices used to test applications. It helps to ensure compatibility and identify potential issues. 

Ask a business owner what configurations, device browser types, and OS versions are important for them. In addition, explore the user statistics to prioritize your testing.

The environment is used to manage and track the testing process across different stages of software development. In simple terms, the environment is the place where you perform your testing. 

Variables are used to pass a parameter into the test with specific values so that parameterized variation of the original test case will be produced. Think about variations of test combinations your project requires and list them for future reuse. 

Use the ‘mix and match’ approach when you are planning test combinations and environments for test runs. This means you may have some combinations and you may execute this in one environment. Once you will get your code deployed to a high environment and if you will have to execute the same number of test cases again you may use different combinations or the same set of steps for the same set of test cases”, Dmitry recommends. 

Shift left approach

The closer you are to the release the more expensive it will be for you to fix a defect. You can just miss some requirements or you can have development problems because you haven’t properly tested some requirements. This is bad for a project. The shift left approach helps you to mitigate these risks. 

The best strategies to implement the shift left approach

Test the requirements. Make sure you are involved in the requirements testing phase. Gathering and analysis of requirements in the early testing stages is a useful practice for any project. It reduces the cost of development & testing and speeds up the release. 

Collaborate with developers. Ask developers to do the review before they pass the actual version of the code. This approach provides focus on delivering a good quality product. If there are some obvious issues, developers will be the first to encounter them and will be able to fix them faster.

Use checklists and scenario-based approaches. There is always a chance that some requirements are missed and developers have implemented some functionality in a bit another way. Here you may follow the approach when you create a high-level checklist. You can do it directly in the test case management system. When a code version is implemented, you test it and based on your observation you can tailor your checklist into full-fledged test cases. You can add the missing scenarios or remove extra ones.

Provide early feedback. This approach is useful in a situation when developers have implemented a complex functionality. Ask them to share their work for your feedback when some modules/parts are ready. This way developers will get feedback faster rather than waiting for the entire code to be done.

Test case management vs. Excel

Lots of teams still use Excel or Google Sheets as a primary source of documentation. It could be fine for small teams and simple projects. However, as the complexity of the application grows, it’s better to implement a test case management solution. Some teams postpone this because they are afraid of possible challenges such as:

  • Training is required at the beginning.
  • Migration is needed from the initial source of data.
  • Concerns about a mismatch between TMS functionality and demands of a QA team.

With Zebrunner test case management solution, you will face the above-mentioned challenges, but overcome these in a matter of minutes. Yes, training will be useful for reaching how to apply advanced features. However, you can start to work with this TCM software even if you have never used such a tool.

See a list of benefits of test case management solution:

  • Flexibility in building your tests
  • Reducing the duplication of data
  • Improving coverage & traceability of test cases
  • Increasing team productivity & collaboration between team members and stakeholders
  • Securing Testing Data

Try for free to understand that this is a real benefit for your project. 

About the author

Anton Bravin

Product Marketing Manager

8 years on a mission to bridge the gap between cutting-edge products and the audiences who need them most. Anton speaks the languages of developers and customers, allowing him to craft compelling narratives showcasing true value.