当前位置: 首页 > 知识库问答 >
问题:

在Jenkins中自动运行JUnit测试,无需maven或ant

岳正浩
2023-03-14

我目前正在使用Jenkins设置一个持续集成工具。每次构建完成时,我都想运行JUnit测试。我的问题是,将要测试的项目都没有使用maven或ant。所以我想知道是否可以在没有maven或ant的情况下运行这些测试,如果可以,我该怎么做?

提前谢谢你的回答

共有1个答案

宗政元青
2023-03-14

您是否尝试过Johannes Link的ClasspathSuite?

根据文件:

其机理简单。只需在Eclipse中创建一个新项目,并将包含要运行的测试的所有项目添加到其构建路径。现在创建这样一个类:

import org.junit.extensions.cpsuite.ClasspathSuite;
import org.junit.runner.RunWith;
@RunWith(ClasspathSuite.class)
public class MySuite {}

这将执行项目类路径中的所有JUnit4测试类(那些包含带有@Test注释的方法)。

然后可以使用JUnitCore运行它。

java -cp /usr/share/java/junit.jar org.junit.runner.JUnitCore [test class name]

有关更多信息,请参阅如何从命令行运行Junit测试用例?。

 类似资料:
  • 问题内容: 我目前正在与Jenkins建立一个持续集成工具。我想在每次构建时都运行JUnit测试。我的问题是将要测试的项目都没有使用maven或ant。所以我想知道是否可以在没有maven或ant的情况下运行这些测试,如果可以,我该怎么办? 预先感谢您的回答 问题答案: 您是否尝试过JohannesLink的ClasspathSuite? 从文档中: 机制很简单。只需在Eclipse中创建一个新项

  • 我有一些Selenium Webdriver测试,希望使用mvn-test从命令行运行。问题是,我可以清理,构建和编译没有问题,但没有测试运行。我没有收到任何与测试有关消息,如“There are no tests to run”。 我的junit测试遵循*Test类命名约定。 编辑:好的,我发现这是一个配置文件的问题-修复!

  • 问题内容: 我有一个大型的Maven项目,其中包含多个模块。当我想从一个模块运行JUnit测试时,我在包含所有模块的目录中运行“ mvn -Dtest = NameOfTest测试”。当我运行此命令时,Maven会遍历每个模块并尝试对其进行编译(尽管它已被编译),这涉及到复制一堆文件并增加测试的总时间。看来,Maven surefire插件的“ test”命令执行了测试之前的所有步骤。我想知道是否

  • 问题内容: 我正在使用JUnit 4.4和Maven,并且有大量的长时间运行的集成测试。 关于并行化测试套件,有一些解决方案可以让我在单个测试类中并行运行每个测试方法。但是所有这些都要求我以一种或另一种方式更改测试。 我真的认为,在X线程中并行运行X个不同的测试类将是一种更干净的解决方案。我有成百上千的测试,所以我真的不在乎线程测试类。 问题答案: 使用Maven插件:

  • 我在Jenkins做一个terraform测试。以下是我所做的: > 已安装terraform插件 我知道它看不到地球形态,但我怎么才能让它看到呢?我用github回购来获取消息。我想为每个terraform命令做一个步骤:init、plan和apply。我怎样才能做到这是詹金斯?我找不到任何教程解释这一点。多谢了。

  • 我在IntelliJ中打开了一个新的Java项目,用Maven作为构建工具,目前有一个类和一个JUnit5测试类。当我指示IntelliJ单独或一起运行测试时,它就可以工作了。但是当我转到终端并点击或从IntelliJ内的Maven窗格中执行相同操作时,它会跳过测试。 然而,与这个类似问题的提问者不同,我没有得到任何错误信息。测试类被找到并编译。我没有同样的问题(不正确的文件命名),他有。 它们是