生成步骤"执行 Windows 批处理命令"标记为生成失败已完成:失败



我已经将我的项目配置为使用Jenkins运行Build,如果我自己执行testng.xml,它会成功执行我的测试用例,但如果我通过Jenkins执行,我会收到以下错误消息

生成步骤"执行Windows批处理命令"将生成标记为失败完成:故障

但是,如果测试用例输出仅使用`(system.out.println();),它将成功执行构建

如果测试用例与打开浏览器有关,则通过Jenkins 失败

这是我的测试班

    public WebDriver driver;
    public String baseUrl = "http://iparkit.com/";
    @BeforeMethod
      public void initializeWebDriver() {
          driver = new FirefoxDriver();
          driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
          driver.get(baseUrl);
          driver.manage().window().maximize();
      }
    //Close Browser after each test case execution
    @AfterMethod
    public void closeBrowser()
    {
        driver.close();
    }
    @Test(enabled=true) //TC2-01 - OK
    public void iparkit_valid_email_password() throws InterruptedException
    {
        driver.findElement(By.xpath(".//*[@id='mast']/nav/ul/li[4]/a")).click();
        driver.findElement(By.xpath(".//*[@id='email']")).sendKeys("imanltd+1@hotmail.com");
        driver.findElement(By.xpath(".//*[@id='password']")).sendKeys("*******");
        driver.findElement(By.xpath(".//*[@id='top']/div/main/form/main/fieldset[3]/button")).click();
        String Expectedlnktext = driver.findElement(By.linkText("Sign Out")).getText();
        String Actuallnktext = "Sign Out";
        Assert.assertEquals(Actuallnktext,Expectedlnktext);
    }
}

这是我的testng.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Suite" parallel="none">
  <test name="Test">
    <classes>
       <class name="automationframework.Iparkittesting"/>
    </classes>
  </test> <!-- Test -->
</suite> <!-- Suite -->

这是最后一个控制台输出

Started by user anonymous
Building in workspace D:K - SeleniumSeleniumWorkspaceiParkit_copy
[iParkit_copy] $ cmd /c call C:WindowsTEMPhudson4187523140058494240.bat
D:K - SeleniumSeleniumWorkspaceiParkit_copy>run.bat
D:K - SeleniumSeleniumWorkspaceiParkit_copy>java -cp bin;lib/* org.testng.TestNG testng.xml 
[TestNG] Running:
  D:K - SeleniumSeleniumWorkspaceiParkit_copytestng.xml

===============================================
Suite
Total tests run: 1, Failures: 1, Skips: 0
===============================================
Build step 'Execute Windows batch command' marked build as failure
Finished: FAILURE

在批处理脚本结束时使用exit /b 0就可以了。

批处理命令将检查最后一个命令的"错误级别"(返回代码)。任何不为零的东西都会导致失败。你没有给出太多细节,但你的浏览器似乎返回了一个非零错误级别。

您可以在浏览器之后运行一个伪命令来判断错误级别。或者修复导致非零错误级别的任何原因(推荐解决方案)

设置错误级别的常用伪命令示例为"ver>nul"

相关内容

最新更新