相关疑难解决方法(0)

分组JUnit测试

有没有办法在JUnit中对测试进行分组,以便我只能运行一些组?

或者是否可以注释一些测试,然后全局禁用它们?

我正在使用JUnit 4,我不能使用TestNG.

编辑: @RunWith和@SuiteClasses很棒.但是,是否可以在测试类中仅注释一些测试?或者我是否必须注释整个测试类?

java junit unit-testing

41
推荐指数
4
解决办法
4万
查看次数

在Junit 4中运行所有测试

我希望能够以编程方式在项目中运行所有测试.我知道Eclipse有一个"Run as JUnit test"配置,它以某种方式抓住项目中的所有测试并运行它们.有没有办法让我以编程方式获取测试列表并运行它们?或者是否有一些很好的方法来构建包含所有测试用例的测试套件,而无需手动列出每个测试用例(全部700多个)?

我在Eclipse中尝试过"New ... - > Test Suite"选项,但这似乎仅适用于JUnit 3,通过从TestCase扩展来识别测试

测试类是JUnit 4,因此它们唯一的区别特征是注释,没有命名约定,没有来自TestCase的子类.

提前致谢!

java eclipse junit junit4

31
推荐指数
2
解决办法
4万
查看次数

是否有用于运行测试组的JUnit TestRunner?

我目前正在使用JUnit 4,并且需要将我的测试分成可以任意组合选择性运行的组.我知道TestNG有一个注释测试的功能,可以将它们分配给组,但我现在无法迁移到TestNG.看起来这可以通过一些自定义注释和一个自定义JUnit TestRunner在JUnit中轻松完成.我已经检查了两个JUnit文档并在网上搜索但是找不到这样的东西.有人知道这样的TestRunner吗?

更新:感谢您对测试套件的回复.我应该在原来的问题中解决这些问题.我们走了:我不想使用测试套件,因为他们需要我手动创建和管理它们,这意味着触摸我的所有测试并手动将它们安排到套件中(太多工作和维护噩梦).我需要做的就是运行所有单元测试,除了一些真正的集成测试.所以我想注释这些,并运行所有其他人.在其他时候,我想只运行集成测试.我还需要将单元测试分成多个组,这对套件来说是不可能的.希望这有助于清理事情.

更新2:如果JUnit没有这个OOB,我正在寻找一个将其添加到JUnit的开源库(注释+自定义JUnit Test Runner).

java junit unit-testing

14
推荐指数
2
解决办法
8271
查看次数

junit 4.10如何在测试开始运行之前打印测试用例名称

junit 4.10如何在测试开始运行之前打印测试用例名称..

所以我想在这里打印"sampleTest".

我怎么在junit 4.10做到这一点?先感谢您

class1:
TestSuite all = new TestSuite();
all.addTestSuite(class2);
all.run(result);

class2:
public class profileTest extends TestCase()
{
  //I want to print the test cases name before the test actually starts executing

    @Test
    public void sampleTest1(){
        //Some code here.
    }

    @Test
    public void sampleTest2(){
    //some more code here.
    }
}
Run Code Online (Sandbox Code Playgroud)

java junit

9
推荐指数
2
解决办法
1万
查看次数

按文件名仅在项目中运行某些junit测试

所以我有一个eclipse项目,带有一堆junit测试文件.我想运行所有这些,除了具有特定后缀的那些(或者相反,只有那些具有一组后缀的那些).

例如,我可以在maven中这样做; 我可以在一个以"Test"结尾的文件中的项目中运行所有测试,并忽略所有其他文件.

我想在eclipse中做类似的事情而不必配置东西; 只是基于名字.现在我会去"运行配置.."然后选择"在一个选定的项目中运行所有测试......",但它会运行它在那里找到的所有内容; 我想根据后缀省略文件.

在eclipse中有没有办法做到这一点?

eclipse junit

6
推荐指数
1
解决办法
2292
查看次数

在不同的JUnit测试之间共享对象引用

我有几个JUnit测试,需要一个昂贵的资源(一个WALA类hierachie)的参考,需要大约30秒创建.我想在我的整个测试套件中分享这个参考.

我想到了一个基类中的静态成员,它是用@BeforeClass方法启动的.运行测试后,无论如何都应该确定JVM.

有没有其他方法可以实现这一目标?或任何其他最佳做法?

java junit

5
推荐指数
1
解决办法
1947
查看次数

2
推荐指数
1
解决办法
790
查看次数

如何使用jUnit将测试用例添加到套件中?

我有两个测试类,都延伸TestCase.每个类都包含一系列针对我的程序运行的单独测试.

如何作为同一套件的一部分执行这两个类(以及它们拥有的所有测试)?

我正在使用jUnit 4.8.

java junit unit-testing

0
推荐指数
1
解决办法
8478
查看次数

从Eclipse内部运行JUnit测试套件

从历史上看,我总是写这样的单元测试:

public void WidgetTest {
    @Test
    public void test_whatever() {
        // Given...

        // When...

        // Then...
    }
}
Run Code Online (Sandbox Code Playgroud)

这允许我在Eclipse中右键单击我的测试文件Run As >> JUnit,并直接从Eclipse内部测试该特定测试.然后,在进行本地(基于Ant)构建时,我将<junit>Ant任务配置src/test/java为一次运行所有测试.

我现在正在寻找一种中间解决方案.也就是说,只需单击一个按钮,就可以同时从Eclipse内部运行所有测试类.一位同事建议Junit有一个"测试套件"的概念,我可以附加我的所有测试类,但看起来这个测试套件是某种我不希望包含在内的JAR /工具我的项目.

所以我问:如何定义这样一个"测试套件",包括我所有的测试类,并从Eclipse内部一次性运行所有这些测试套件?提前致谢.

java eclipse junit unit-testing test-suite

0
推荐指数
1
解决办法
6134
查看次数

标签 统计

junit ×9

java ×8

unit-testing ×5

eclipse ×3

junit4 ×1

test-suite ×1