我正在使用 TestNG、Maven 和 java。当通过 Eclipse 运行我的自动化测试时,它们运行正常,但是当我尝试通过 Jenkins 运行它们时,它只是显示以下错误:
**C:\Users\user\git\Projeto\Projeto>java org.testng.TestNG**
**C:\Users\user\git\Projeto\Projeto\JenkinsXml\Mainframe.xml**
**[TestNG] Running:**
**C:\Users\user\git\Projeto\Projeto\JenkinsXml\Mainframe.xml**
**===============================================**
**Extent Parallel Test**
**Total tests run: 1, Failures: 1, Skips: 0**
**===============================================**
**Build step 'Executar no comando do Windows' marked build as failure**
**Finished: FAILURE**
这不是一个很有帮助的错误,是什么让它变得更加困难......
使用的.bat存档:
调用 C:\Users\%USER_NAME%\git\Projeto\Projeto\ScriptBat\JenkinsConfigWorkspace\ScriptConfig.bat
cd %projectLocation%
java org.testng.TestNG %projectLocation%\JenkinsXml\Mainframe.xml
使用的.xml存档:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Extent Parallel Test" parallel="classes"
thread-count="1" configfailurepolicy="continue">
<parameter name="dispositivo" value="Android Emulator" />
<parameter name="versaoAplicativo" value="3" />
<parameter name="browserParametro" value="Chrome" />
<parameter name="baseURL" value="https://portal/login.jsp" />
<parameter name="caminhoPlanilha" value=".\caminho\nomePlanilha.xlsm" />
<test name="Macro" allow-return-values="true">
<parameter name="executavel" value="mainframe.edp" />
<parameter name="nomeMacro" value="RecuperarDadosMainframe" />
<classes>
<class name="mobile.android.empresa.automacao_massas.RunExcelMacro" />
</classes>
</test>
</suite>
我想澄清一下,这个 xml 调用了一个调用大型机应用程序的 java 类。我可以通过 cmd 运行 xml,但无法运行调用此 xml 的批处理。
最佳答案
我解决了这个问题!不幸的是,它仍然没有在 cmd 中运行,但我的目标是在 Jenkins 中运行,现在它正在运行。
我所做的是上面评论中的所有步骤,并在类路径中配置了我的 jacob jar。我不只是导入 jar 而是它的整个文件夹,因为这样也可以导入 dll 文件。
要访问 Eclipse 中的类路径,请执行以下操作:
窗口 > 首选项 > Java > 构建路径 > 类路径变量
我希望这可以帮助别人......
关于java - Jenkins 无法运行 xml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45193480/