【问题标题】:JUnit - Run specific tests using JUnitCoreJUnit - 使用 JUnitCore 运行特定测试
【发布时间】:2018-06-11 22:24:23
【问题描述】:

我有几个包含测试的类。 我有一个使用 JUnitCore 来运行所有测试的 main 方法。

为了在每个班级中运行特定的测试,我该怎么做?

目前我使用这样的东西来运行我的所有测试:

      Result result = JUnitCore.runClasses(TestJunit.class, TestJunit2.class);

也许有可能对相关测试进行分类,然后使用 JUnitCore 运行它们?谢谢!

【问题讨论】:

  • 为什么会有一个 main 方法?将测试作为构建过程的一部分
  • 根据公司要求,它必须在不同的项目中。对这个问题有任何帮助吗?
  • 不同项目中的单元测试....谈论疯狂。但是,如果是这样:为什么不将其作为“不同项目”构建过程的一部分进行整合呢?单元测试不应该使用 main 方法运行

标签: java selenium junit automation


【解决方案1】:

您可以通过提供类和方法名称来构建org.junit.runner.Request,并将其传递给JUnitCoreclass 的run 方法。这将执行指定类的给定测试。

Request request = Request.method(TestClass.class, "methodName");
Result result = new JUnitCore().run(request);

您可以通过调用Result类中的wasSuccessful()方法来检查测试结果。

【讨论】:

  • 我已经尝试过了,但我想为每个类运行超过 1 个方法。有什么解决办法吗?
  • @NativBarak 你不能重构你的测试并将它们分成不同的类吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-07-20
  • 1970-01-01
  • 1970-01-01
  • 2015-03-26
  • 2011-05-29
相关资源
最近更新 更多