`
mwhgJava
  • 浏览: 97994 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

JUNIT4 笔记(四) 测试类——继承关系执行顺序

阅读更多
父类有tearUp和tearDown的代码,如果父类方法被子类覆盖(隐藏了)将不被执行,否则先执行父类的tearUp方法,再执行子类的tearUp方法,先执行子类的tearDown方法,再执行父类的tearDown方法。

不推荐测试类继承另一个测试类。
不推荐测试类有多个@Before,多个@After,多个@ BeforeClass,多个@AfterClass。

ParentTestcase.java
public class ParentTestcase {
	@BeforeClass
	public static void beforeClass(){
		System.out.println("@BeforeClass");
	}
	@AfterClass
	public static void afterClass(){
		System.out.println("@AfterClass");
	}
	@Before
	public void before(){
		System.out.println("@Before");
	}
	@After
	public void after(){
		System.out.println("@After");
	}
	@Test public void test1() {
		System.out.println("@test1");
    	assertTrue(true);
    	}
	@Test public void test2(){
		System.out.println("@test2");
		assertEquals(5,2+3);
	}
}

FirstChildTestcase.java
public class FirstChildTestcase extends ParentTestcase {
	@BeforeClass
	public static void beforeClass(){
		System.out.println("child @BeforeClass");
	}
	@AfterClass
	public static void afterClass(){
		System.out.println("child @AfterClass");
	}
	@Before
	public void before(){
		System.out.println("child @Before");
	}
	@After
	public void after(){
		System.out.println("child @After");
	}
	@Test public void test1() {
		System.out.println("child @test1");
    	assertTrue(true);
    }
	@Test public void test2(){
		System.out.println("child @test2");
		assertEquals(5,2+3);
	}
}

SecondChildTestcase.java
public class SecondChildTestcase extends ParentTestcase {
	@BeforeClass
	public static void childBeforeClass(){
		System.out.println("child @BeforeClass");
	}
	@AfterClass
	public static void childAfterClass(){
		System.out.println("child @AfterClass");
	}
	@Before
	public void childBefore(){
		System.out.println("child @Before");
	}
	@After
	public void childAfter(){
		System.out.println("child @After");
	}
	@Test public void childTest1() {
		System.out.println("child @test1");
    	assertTrue(true);
    	}
	@Test public void childTest2(){
		System.out.println("child @test2");
		assertEquals(5,2+3);
	}
}

执行FirstChildTestcase
  1. child @BeforeClass
  2. child @Before
  3. child @test1
  4. child @After
  5. child @Before
  6. child @test2
  7. child @After
  8. child @AfterClass

执行SecondChildTestcase
  1. @BeforeClass
  2. child @BeforeClass
  3. @Before
  4. child @Before
  5. child @test1
  6. child @After
  7. @After
  8. @Before
  9. child @Before
  10. child @test2
  11. child @After
  12. @After
  13. @Before
  14. child @Before
  15. @test1
  16. child @After
  17. @After
  18. @Before
  19. child @Before
  20. @test2
  21. child @After
  22. @After
  23. child @AfterClass
  24. @AfterClass

分享到:
评论

相关推荐

    在Eclipse中使用JUnit4进行单元测试

    对于需要延迟执行或者异步测试的情况,JUnit4提供了`@Rule`和`@ClassRule`注解,可以定义自定义的测试规则。例如,`Timeout`规则可以限制测试方法的执行时间,超过设定时间就会导致测试失败。 在Eclipse中运行单元...

    junit单元测试——浅浅笔记

    4. **执行测试**: 不推荐直接运行整个类,而应该针对单个测试方法进行运行。在Eclipse中,可以通过右键点击测试方法,然后选择“Run As” -> “JUnit Test”来运行单个测试。 5. **控制测试执行**: - **忽略...

    Junit4 Test 单元测试

    在 JUnit4 中,测试类通常会继承自 `org.junit.Test` 类,然后在类中定义一系列带有 `@Test` 注解的方法,这些方法即为测试用例。每个测试用例应尽可能地独立于其他用例,确保它们的执行顺序不会影响测试结果。例如...

    junit4测试jar包

    JUnit4测试框架是Java开发中广泛使用的单元测试工具,它为开发者提供了编写和运行可重复、可靠的测试用例的能力。这个“junit4测试jar包”包含了一切你需要在项目中集成JUnit4进行测试的库文件。只需将其复制到你的...

    自动饮料机Junit测试(软件测试与质量保证实验).rar

    Junit是Java领域广泛使用的单元测试框架,它提供了一套简洁易用的API,便于开发者编写和执行测试。 **Junit测试框架** Junit是开源项目,由Eclipse基金会维护,广泛应用于Java开发环境。它为每个测试用例提供了...

    JUnit学习笔记

    JUnit4引入了注解驱动的测试,比如`@Before`和`@After`,分别在每个测试方法执行前和执行后运行,通常用于初始化和清理资源。此外,`@BeforeClass`和`@AfterClass`则只在类级别的开始和结束时执行一次。 对于更复杂...

    Junit4单元测试入门例子

    这样做是因为我们需要使用JUnit4的运行器来执行测试。 ```java import org.junit.Test; import static org.junit.Assert.assertEquals; @RunWith(JUnit4.class) public class CalculateTest { // 测试用例代码将...

    junit4测试源码

    关于"浪曦JUNIT4笔记"可能涉及的内容,浪曦可能对JUnit4的使用提供了详细的教程或者最佳实践,包括但不限于如何组织测试类,如何使用Mockito进行模拟对象测试,以及如何利用TestNG或Spock等其他测试框架与JUnit4结合...

    Junit学习笔记

    2. 创建测试类和方法:创建一个新的Java类,添加`@RunWith(JUnit4.class)`注解,然后在类中编写测试方法,每个方法都添加`@Test`注解。 3. 运行测试:在IDE中选择测试类或单个测试方法右键运行,查看测试结果,绿色...

    junit4教程(《Junit4初探》)

    **JUnit4教程——初探单元测试的艺术** JUnit4是Java编程语言中广泛使用的单元测试框架,它是Java开发者进行软件质量保证的重要工具。本教程将深入浅出地介绍JUnit4的基本概念、核心特性以及如何在实际项目中应用它...

    junit4单元测试

    为了控制测试的执行顺序,JUnit4提供了`@FixMethodOrder`和`@Test(order = N)`注解,使得你可以按照指定的顺序执行测试方法。这在某些需要特定执行顺序的场景下很有帮助。 除了基本的测试功能,JUnit4还可以与其他...

    JUnit4学习笔记

    @FixMethodOrder:用于控制测试方法的执行顺序,可以指定按照字母顺序或者其他方式执行测试。@Category:用于分类测试,可以将测试分为不同的类别,然后选择性地运行某类测试。在 JUnit4 中,通过注解的使用,测试...

    junit4学习文档

    而在 JUnit4 中,测试类不再受此限制,可以通过注解来指定测试方法,使得测试类的结构更加自由。 - **测试方法命名** 在 JUnit3 中,所有测试方法必须以 `test` 开头。而在 JUnit4 中,测试方法只需使用 `@Test` ...

    junit4单元测试实例

    在JUnit4中,测试类通常继承自`org.junit.Test`,但更常见的是使用注解来定义测试方法。下面是一个简单的例子: ```java import org.junit.*; public class CalculatorTest { @Before public void setUp() { //...

    Junit4单元测试个人笔记

    《Junit4单元测试个人笔记》 单元测试是软件开发过程中的重要环节,它能确保代码的正确性和稳定性。本文主要介绍了使用Junit4进行单元测试的一些规范和Eclipse中的应用。 首先,遵循一定的测试规范至关重要。测试...

    Spring+JUnit4 +Ant测试报告

    在Spring和JUnit4的测试环境中,Ant通常被用来执行测试并生成测试报告。通过配置Ant的build.xml文件,我们可以指定测试类或测试套件,并定义测试后的结果处理,如生成测试报告。 集成Spring、JUnit4和Ant进行测试时...

    Junit学习笔记~

    Junit学习笔记,希望有用~~~~~~~~~~~~~~~~~~~~~~

    单元测试利器JUnit4

    JUnit4作为Java平台上最流行的单元测试框架,极大地简化了测试代码的编写和执行。本篇将深入探讨JUnit4的相关知识点,帮助你更好地掌握这个强大的工具。 1. JUnit4简介: JUnit4是由Ernst Kuhr和Kent Beck开发的...

Global site tag (gtag.js) - Google Analytics