Explore the insights shared by our visionary CEO, Mr. Aseem Bakshi

CEO's Desk
×
×
×
×

Would you be willing to pay more for the last-minute execution of plans just because you didn’t chalk out a few details in advance? It hurts to shell out extra for something that could have been easily well planned in advance. Planning is an indispensable part of our daily lives. The same is applicable when it comes to software development and testing. Planning is the first step forward and selecting the right approach makes all the difference.

Testing is an integral part of software development and planning it well is half the battle won. The same is deemed true for test case designing and execution, which are the founding stones of software testing.

A test case is a well-defined specification of inputs, test procedure, test conditions, and expected output. 

Every test case maps to a business requirement and every requirement can have multiple test cases corresponding to it. The more complex the requirement, the higher is the number of test cases corresponding to it. But, is it mandatory to execute every single test case designed to test a functionality? Not really!! The key is to find the right ones, especially when the time is of the essence and resources are scarce or limited

Test case prioritization

The pace at which development is done in the agile methodology, testers are usually left with a limited amount of time in the sprint to go through an entire round of testing. It calls for choosing and executing the right test cases to conduct and effective testing. To that effect, the testing team needs to employ a proper test execution strategy based on two key parameters – severity and priority

Priority is essentially the order in which defect should be fixed and deals with scheduling.

Severity is the degree of impact on the functionality of the end product.

The following diagram represents defect severity and priority as the two key parameters. Based on the weightage of priority and severity, the right test cases are identified and marked for execution.

Test case prioritization
Test caseExplanationExample
CriticalThe test cases that need to be executed first are the ones attached to high priority and high severity.User’s inability to log in to a system. 
Everything stands still if a user cannot log in thus making it critical to fix it first.
HighThese are test cases with low priority but with high severity. “Change Password” link in the application not working properly.
This is a rarely used feature so the low frequency of accessing this link makes a low priority.But a functionality not working makes it a high severity.
MediumMedium level test cases determine that the crucial information available on the product is correctly conveyed.Incorrect logo/spellings of an organization on every page of a website.
This is a high priority because it is a showcase of the website. However, it is not impacting any functionality thus ranking lower on the severity meter.
LowThese test cases will not impact the functionality or the quality of the product to be released and need not necessarily be executed in case of a time crunch.
Minor UI mistakes like color and font.

Identifying the right test cases and test approach

Identifying the right test cases and test approach

Multiple test cases can correspond to a single requirement, resulting in a big test case repository. Picking which ones to execute, at what stage, is a herculean task. 

Test scripts contain multiple steps sometimes running into many lines of code. A prudent and wise approach is to adopt modularity from the beginning itself. It helps in executing specific sections/ test modules, instead of a large script. 

Also, it is important to check whether all the identified test cases should be executed or just a subset needs to be considered. It largely depends on the stage at which the testing is being conducted.

The following figure shows the number of test cases that should be ideally executed depending on the stage of development. 

Assuming, Timeline for production = 2 weeks and Number of test cases = 1000

Note: These are indicative numbers and can vary based on the application under test.

graph

At the development stage, execute at least 100 automated test cases for the affected code, several times a day.  

At the integration stage, which may happen maybe twice or thrice a week, approximately 300 test cases may be executed. It is a good idea to consider cases impacting the security posture and overall performance. At this stage, using a healthy mix of manual and automated test cases is a preferred approach.

At deployment, a complete regression testing cycle should be conducted with all the testcases, 1000 test cases in this example.

 Needless to say, when the timeline is tight, then pick up the critical and high impact test cases.

AI Testing Service

Webomates way of testing

Webomates way of testing

Webomates follows a comprehensive process of test case planning, writing and then selecting the right ones to execute as per the situation.

  1. Planning:
    Detailed test strategy is framed, followed by writing the test cases.
    Test suites are prepared for different modules mapping to the business requirements.
  1. Development phase testing:
    Completely automated smoke test runs are conducted and results are shared within 15 minutes. These automated tests can be run multiple times a day without any manual intervention.
  1. Integration level testing:
    Overnight integration level testing is performed that generates results within 10 business hours. Test cases include HIGH priority scenarios and the ones having a direct impact on the business, based on new integrations.
  1. Deployment level testing:
    FULL regression testing is done for the deployment phase within 24 hours. This is to ensure that any new changes have not broken the application at any point and the usability requirements have been met satisfactorily.
  1. Going an extra mile:
    Exploratory testing is conducted to fill the remaining gaps in all the test cycles of Overnight and FULL services.

Conclusion

Shorter time-to-market is the need of the hour. However, with a recurrent request for changes and additional features, the testing game needs to be upped by a significant degree. Hence, identifying the right cases and executing them using a well-planned test strategy is the key to successful testing.

Webomates offers regression testing as a service that is a combination of test cases based on testing and exploratory testing. Test cases based testing establishes a baseline and uses a multi-execution channel approach, to reach true pass / true fail, using AI Automation, automation, manual, and crowdsourcing. Exploratory testing expands the scope of the test to take the quality to the next level. The service is guaranteed to do both and even covers updating test cases of modified features during execution in 24 hours.

At Webomates, we work relentlessly to evolve our platform and processes in order to provide guaranteed execution, which takes testing experience to an entirely different level, thus ensuring a higher degree of customer satisfaction.If you are interested in learning more about Webomates’ CQ service please click here and schedule a demo, or reach out to us at info@webomates.com

Spread the love

Tags: , , , ,

Leave a Reply

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

AT&T's Success Formula: Download Our Whitepaper Now!


Search By Category

Test Smarter, Not Harder: Get Your Free Trial Today!

Start Free Trial