0

我有一个 C# .NET 单元测试项目,它使用 ChromeDriver 在网页上运行自动化 UI 测试。这是在 Windows 7 64 位上。测试在 Visual Studio 2010 中运行良好。

我已经设置了一个 Jenkins 盒子来在本地(在 master 上)运行测试,这是一个 Windows 2008 Server。测试构建,但我的 MSTest 命令神秘地失败:

"c:\program 文件 (x86)\Microsoft Visual Studio 10.0\Common7\IDE\MSTest.exe" /resultsfile:c:\jenkins\jobs\FXO_UI_Tests\workspace\TestResults.TRX /testcontainer:c:\jenkins\jobs\ FXO_UI_Tests\workspace\bin\Debug\Calculators.FXOptions2.Automation2.dll /testsettings:c:\jenkins\jobs\FXO_UI_Tests\workspace\FXO.testsettings

有了这个输出:

Microsoft (R) Test Execution Command Line Tool Version 10.0.30319.1
Copyright (c) Microsoft Corporation. All rights reserved.

Loading c:\jenkins\jobs\FXO_UI_Tests\workspace\FXO.testsettings...
Loading c:\jenkins\jobs\FXO_UI_Tests\workspace\bin\Debug\Calculators.FXOptions2.Automation2.dll...
c:\jenkins\jobs\FXO_UI_Tests\workspace\bin\Debug\Calculators.FXOptions2.Automation2.dll
The file exists.

c:\jenkins\jobs\FXO_UI_Tests\workspace>exit 1 
Build step 'Execute Windows batch command' marked build as failure

令人恼火的是,粘贴在命令窗口中的相同 MSTest 命令运行得非常好。当我手动运行时,我没有看到“文件存在”。

我曾尝试将 Jenkins 作为服务运行,但它目前在登录的用户帐户中独立运行。相同的 Jenkins 设置可以打开 Chrome.exe,所以我不明白为什么命令刚刚结束。

请帮忙!

4

1 回答 1

1

找到了!“文件存在。” 是关键。事实证明,Jenkins 使用的 TEMP 文件夹与登录用户不同(尽管是同一用户)。那个文件夹里装满了所有可能的文件名。清除临时文件夹修复它。

于 2013-07-25T23:03:35.273 回答