กฎใช้เพื่อปรับปรุงพฤติกรรมของวิธีทดสอบแต่ละวิธีด้วยวิธีทั่วไป กฎ Junit สกัดกั้นวิธีการทดสอบและอนุญาตให้เราทำบางสิ่งบางอย่างก่อนที่วิธีทดสอบจะเริ่มดำเนินการและหลังจากวิธีการทดสอบได้รับการดำเนินการ
ตัวอย่างเช่นการใช้กฎ@Timeoutเราสามารถตั้งค่าการหมดเวลาสำหรับการทดสอบทั้งหมดได้
public class TestApp {
@Rule
public Timeout globalTimeout = new Timeout(20, TimeUnit.MILLISECONDS);
......
......
}
@กฎชั่วคราวจะใช้ในการสร้างโฟลเดอร์ไฟล์ชั่วคราว ทุกครั้งที่มีการดำเนินการวิธีทดสอบโฟลเดอร์ชั่วคราวจะถูกสร้างขึ้นและจะถูกลบหลังจากการดำเนินการของวิธีการนั้น
public class TempFolderTest {
@Rule
public TemporaryFolder tempFolder= new TemporaryFolder();
@Test
public void testTempFolder() throws IOException {
File folder = tempFolder.newFolder("demos");
File file = tempFolder.newFile("Hello.txt");
assertEquals(folder.getName(), "demos");
assertEquals(file.getName(), "Hello.txt");
}
}
คุณสามารถดูตัวอย่างของกฎที่สร้างขึ้นโดย junit ได้ที่ลิงค์นี้