加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – junit 3中的类拆解?

发布时间:2020-12-14 05:44:12 所属栏目:Java 来源:网络整理
导读:我们有很多使用JUnit 3编写的集成测试,尽管我们现在使用4.4运行它们.其中一些需要一个tearDown方法,该方法在类中的所有测试完成后运行(以释放一些公共资源). 我看到这可以在junit 4中使用@AfterClass(org.junit)完成.但是,将其混合到扩展TestCase(junit.fram
我们有很多使用JUnit 3编写的集成测试,尽管我们现在使用4.4运行它们.其中一些需要一个tearDown方法,该方法在类中的所有测试完成后运行(以释放一些公共资源).

我看到这可以在junit 4中使用@AfterClass(org.junit)完成.但是,将其混合到扩展TestCase(junit.framework.*)的现有junit 3测试中似乎不起作用. [BTW有迁移工具吗?问题264680表明一年前没有一个.]

我已经看到提到使用junit.extensions.TestSetup这种事情.我对此的简要测试似乎不起作用.任何例子?

解决方法

找到了我自己的问题的答案:)在发布我的问题之前我曾经尝试过这个问题,但它并不适用于我.但我现在意识到这是因为我们的测试框架调用junit的方式与默认方式不同,因此它不会调用以下解决方案中所需的“套件”方法.在Eclipse中,如果我使用捆绑的junit runner直接执行一个Test / TestCase,它运行正常.

在junit 3中每个类进行一次设置/拆卸的方法是使用TestSuite.这是junit.org上的一个例子:

Is there a way to make setUp() run only once?

public static Test suite() {
    return new TestSetup(new TestSuite(YourTestClass.class)) {

        protected void setUp() throws Exception {
            System.out.println(" Global setUp ");
        }
        protected void tearDown() throws Exception {
            System.out.println(" Global tearDown ");
        }
    };
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读