1 package test.configuration; 2 3 import org.testng.Assert; 4 import org.testng.annotations.BeforeGroups; 5 import org.testng.annotations.Test; 6 7 import java.util.ArrayList; 8 import java.util.List; 9 10 /** 11 * beforeGroups test: make sure that the beforeGroups method is invoked 12 * only once even if two test methods belong to the group 13 * 14 * @author cbeust 15 * @date Mar 3, 2006 16 */ 17 public class ConfigurationGroups2SampleTest { 18 private boolean m_before = false; 19 private boolean m_f1 = false; 20 private boolean m_g1 = false; 21 22 @BeforeGroups("cg2-1") before1()23 public void before1() { 24 Assert.assertFalse(m_before); 25 Assert.assertFalse(m_f1); 26 Assert.assertFalse(m_g1); 27 m_before = true; 28 log("before1"); 29 } 30 31 @Test(groups = "cg2-a") fa()32 public void fa() { 33 log("fa"); 34 } 35 36 @Test(groups = "cg2-1") f1()37 public void f1() { 38 Assert.assertTrue(m_before); 39 m_f1 = true; 40 log("f1"); 41 } 42 43 @Test(groups = "cg2-1") g1()44 public void g1() { 45 Assert.assertTrue(m_before); 46 m_g1 = true; 47 log("g1"); 48 } 49 50 private List<String> m_list = new ArrayList<>(); 51 52 @Test(dependsOnGroups = {"cg2-a", "cg2-1"}) verify()53 public void verify() { 54 Assert.assertTrue(m_before); 55 Assert.assertTrue(m_f1); 56 Assert.assertTrue(m_g1); 57 } 58 log(String s)59 private void log(String s) { 60 m_list.add(s); 61 ppp(s); 62 } 63 ppp(String s)64 private void ppp(String s) { 65 if (false) { 66 System.out.println("[ConfigurationGroups2SampleTest] " + s); 67 } 68 } 69 70 } 71