Some of the test notes in JUNIT4 are: @BeforeClass, @Before, @Test, @After, @AfterClass
1, which: @BeforeClass, @AfterClass is JUNIT4 in the new add in
2. If run as--->junit Test, running the method containing the @test annotation is, then all annotation methods will be executed, including the Order of execution:
@BeforeClass, @Before, @Test, @After, @AfterClass
3, in JUNIT4, if the test class inherits the TestCase class, then all annotation will not work.
4, Case:
Package cn.edu.hactcm.testjunit;
Import Java.util.UUID;
Import Org.junit.After;
Import Org.junit.AfterClass;
Import Org.junit.Before;
Import Org.junit.BeforeClass;
Import Org.junit.Test;
/**
* Author:toto [email protected]
* Cfms:computer Files Management system
* version:1.0 2013-2-19 01:26:04
*
* This class is used to test several methods in unit testing
*/
public class Testjunit {
Private String flag;
/**
* Before loading this class, note that there is a keyword: static
*/
@BeforeClass
public static void Testbeforeclass () {
SYSTEM.OUT.PRINTLN ("public static void Testbeforeclass ()");
}
/**
* performed before executing the target test method Testtest ()
*/
@Before
public void Testbefore () {
System.out.println ("-------------------------------------");
SYSTEM.OUT.PRINTLN ("public void Testbefore ()");
Flag = Uuid.randomuuid (). toString ();
System.out.println ("-------------------------------------");
}
/**
* Target test method Testtest ()
*/
@Test
public void Testtest () {
SYSTEM.OUT.PRINTLN ("public void Testtest ()");
SYSTEM.OUT.PRINTLN (flag);
flag = NULL;
}
/**
* Target test method TestTest2 ()
*/
@Test
public void TestTest2 () {
SYSTEM.OUT.PRINTLN ("public void TestTest2 ()");
SYSTEM.OUT.PRINTLN (flag);
flag = NULL;
}
/**
* Execution of the target test method Testtest ()
*/
@After
public void Testafter () {
System.out.println ("-------------------------------------");
SYSTEM.OUT.PRINTLN ("public void Testafter ()");
SYSTEM.OUT.PRINTLN (flag);
System.out.println ("-------------------------------------");
}
/**
* After loading this class, note that there is a keyword: static
*/
@AfterClass
public static void Testafterclass () {
SYSTEM.OUT.PRINTLN ("public static void Testafterclass ()");
}www.2cto.com
}
The result of only executing the Testtest () method is:
public static void Testbeforeclass ()
-------------------------------------
public void Testbefore ()
-------------------------------------
public void Testtest ()
993ea4ea-3626-4caa-9976-07203a8b7475
-------------------------------------
public void Testafter ()
Null
-------------------------------------
public static void Testafterclass ()
In the unit test in Java: @BeforeClass, @Before, @Test, @After, problems in @AfterClass