【发布时间】:2016-03-19 02:36:08
【问题描述】:
我为我的硒测试创建了一个 Maven 项目。我在 src/test/java 下添加了一些 testNG 类。 testNG 类所在的包名被命名为“tests”。
现在我在 Jenkins 中创建了一个项目来构建该项目,并且我正在使用 .bat 文件来执行此操作。
.bat 文件如下所示:
设置类路径=D:\Learning\Eclipse\Workspace\CabiGroup\target\test-classes;D:\Learning\Eclipse\Workspace\CabiGroup\lib\*
java -cp bin;D:\Learning\Eclipse\Workspace\CabiGroup\lib\* org.testng.TestNG XML\CabiDirect.xml XML\CabiHome.xml
在类路径中;我了解需要提供Maven项目的bin文件夹路径;但我在工作区的 Maven 项目下没有看到任何 bin 文件夹。
这就是构建失败并出现错误的原因:
在类路径中找不到类:tests.VerifyAdvanceSearch
(VerifyAdvanceSearch.class是tests包下的testNG类)。
如何查看工作空间下的 bin 文件夹并正确提供 .bat 文件中的路径?
请帮忙。
编辑:我关注了what can I do to make display the bin folder on eclipse?,但没有帮助。
【问题讨论】:
-
maven中没有bin文件夹,你可能在找target\classes
-
@A.DiMatteo target\classes 存在于工作区中。那么我应该如何更改 .bat 文件中的以下参数才能成功构建呢?我进行了以下更改,但仍然出现相同的错误: set classpath=D:\Learning\Eclipse\Workspace\CabiGroup\target\classes
-
但是为什么需要 Jenkins 上的 bat 文件? Jenkins 可以直接执行 maven 项目,而不会出现难以维护的硬编码类路径问题
-
@A.DiMatteo 原因是,我设计的所有类,我都不想全部执行。我有 xml 文件,每个文件都包含其中定义的特定类。实际上,它是一个 Selenium 测试项目,运行/构建整个项目将执行所有测试用例,这绝对是不希望的。希望我能让您理解 :) 另外,如果您请指导我访问任何指导如何运行整个 maven 项目的链接,那也会很有帮助!谢谢。
-
嗯,这是一个简单的谷歌查询 :) cloudbees.com/blog/painless-maven-builds-jenkins 此外,为了您的特定目的,您仍然可以通过 Maven 配置文件 maven.apache.org/guides/introduction/… 避免编写脚本 (.bat)