Java, .NET, PHP, PYTHON, ANGULAR, ML, Data Science, Testing, CI Tutorials in Easy Languages.

"Best Software Training, Internship, Project Development center of Indore India, Helpline 780506-3968"

Groups in TestNG:-

It is used to logically subdivided the test case method, based on their usability.  to create a group, tesng provides "groups" attribute, and "beforegroups" and "aftergroups" annotation will be called for each grouping method.




package scs;

import org.testng.annotations.*;

public class TestNGExampleNew {
@BeforeGroups("car")
    public void bg1()
    {
           System.out.println("Car1");
    }
    @AfterGroups("car")
    public void bg2()
    {
    System.out.println("Car2");
    }
   @Test(groups={"car"})
   public void car1()
   {
   System.out.println("Car3");
   }
  @Test(groups={"car"})
   public void car2()
   {
  System.out.println("Car4");
   }
  @Test(groups={"scooter"})
   public void scooter1()
   {
  System.out.println("Scooter1");
   }
  @Test(groups={"scooter"})
   public void scooter2()
   {
  System.out.println("Scooter2");
   }
  @Test(groups={"scooter","car"})
  public void car_scooter()
 {
  System.out.println("Car, Scooter");
 }

}


create testng.xml file and execute them

<suite name="Suite">

    <test name="Practice Grouping">
      <groups>
       <run>
          <include name="Car" />
       </run>
      </groups>
      <classes>
        <class name="packagename.Classname" />
      </classes>
    </test>

</suite>


To run multiple groups

<suite name="Suite">

   <test name="Practice Grouping">

      <groups>

         <define name="All">

    <include name="Car"/>

    <include name="Scooter"/>

</define>

<run>

    <include name="All"/>

</run>

    </groups>

<classes>

      <class name="package.Grouping" />

</classes>

   </test>

</suite>


Example of Groups

package scs;

import org.testng.annotations.Test;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.AfterGroups;
import org.testng.annotations.AfterTest;
import org.testng.annotations.BeforeGroups;

public class NewTest {
 
  @Test(groups={"A"})
  public void testcase1() {
  System.out.print("TEST CASE CODE 1");
  }
  
  @Test(groups={"A"})
  public void testCase2() {
  System.out.print("TEST CASE CODE 2");
  }
  @Test(groups={"B"})
  public void testCase3() {
  System.out.print("TEST CASE CODE 3");
  }
  @BeforeTest
  public void beforeTest() {
  System.out.print("BEFORE TEST CASE CODE");
  }

  @AfterTest
  public void afterTest() {
  System.out.print("AFTER TEST CASE CODE");
  }
  @BeforeGroups
  public void beforeGroup() {
  System.out.print("BEFORE GROUP CODE");
  }

  @AfterGroups
  public void afterGroup() {
  System.out.print("AFTER GROUP CODE");
  }

}



testng.xml

<?xml version="1.0" encoding="UTF-8"?>
<suite name="Suite">

    <test name="Practice Grouping">
      <groups>
       <run>
          <include name="B" />
       </run>
      </groups>
      <classes>
        <class name="scs.NewTest" />
      </classes>
    </test>

</suite>




Post a Comment

If you have any doubt in programming or join online classes then you can contact us by comment .

Previous Post Next Post