使用cc.net在测试执行中没有显示任何错误的进程超时

时间:2009-04-09 14:30:03

标签: msbuild nunit cruisecontrol.net

nunit测试在运行cc.net时表示进程超时失败。进程已被杀死 通过nUNit或VS时一切正常。

然后cc.net将显示先前构建的结果,即使构建是干净的。

任何帮助PLZ。

4 个答案:

答案 0 :(得分:2)

默认超时为600秒。如果您的测试开始超过该测试,则构建将失败而没有任何指示。您可能需要延长cc.net nunit任务的超时时间

答案 1 :(得分:1)

如果您看到之前版本的结果,可能是因为您没有删除之前版本的结果。

例如,我的NUnit测试结果被写入名为{foo} -results.xml的文件:

<publishers>
    <merge>
        <files>
            <file>bin\debug\*-results.xml</file>
        </files>
    </merge>
</publishers>

在我的任务中,我在构建文件中有一个步骤,删除整个“bin \ debug”目录,以便我的结果始终是当前的。

答案 2 :(得分:0)

一种可能性是您有权限问题。 CruiseControl可能在服务帐户下运行,并且具有与您的用户帐户不同的权限(我假设您使用它来手动运行测试。)尝试以服务帐户登录计算机,然后查看是否可以运行单元测试通过VS或NUnit。

答案 3 :(得分:0)

如果测试有断言,我已经看到过这种情况,例如: Debug.Assert(这里的东西)。当CC.Net中发生这种情况时,CC.Net构建会弹出一个断言消息框。由于没有人关闭构建服务器上的消息框,因此NUnit测试超时。