PAGE-10 : DISABLING A TEST IN TESTNG

DISABLING A TEST 

When executing TestNG tests, there may be some scenarios where you may have to disable a particular test or a set of tests from getting executed. For example, consider a scenario where a serious bug exists in a feature due to certain tests belonging to certain scenarios that cannot be executed. As the issue has already been identified we may need to disable the said test scenarios from being executed.
Disabling a test in TestNG can be achieved by setting the enable attribute of the @Test annotation to false. This will disable the said test method from being executed as part of the test suite. If this attribute is set for the Test annotation at class level, all the public methods inside the class will be disabled.
@Test( enabled=false )
Example of disabling test method
In below test, we have three test methods i.e. testMethodOne(), testMethodTwo() and testMethodThree(). Out of these testMethodTwo() needs to be disabled.

public class DisableTestDemo
{
    @Test(enabled = true)
    public void testMethodOne() {
        System.out.println("Test method one.");
    }

    @Test(enabled = false)
    public void testMethodTwo() {
        System.out.println("Test method two.");
    }

    @Test
    public void testMethodThree() {
        System.out.println("Test method three.");
    }
}


Output of above test run is given below:
[TestNG] Running:  C:\Users\somepath\testng-customsuite.xml
 Test method one.
Test method three.
 PASSED: testMethodOne
PASSED: testMethodThree

===============================================
    Default test
    Tests run: 2, Failures: 0, Skips: 0

As you can see in the previous results, only two methods were executed by TestNG. The method with attribute enabled value as false was ignored from test execution. By default the attribute value of enabled is true, hence you can see the test method with name testMethodThree() was executed by TestNG even when the attribute value was not specified.

No comments:

Post a Comment

About Me

My photo
You can reach me out at : jimmiamrit@gmail.com

Total Pageviews