我正在使用TeamCity和MSBuild构建应用程序,并且为了能够在构建过程中运行我的javascript集成测试(使用NUnit和Watin)并且仍然能够将TeamCity Build代理作为Windows服务运行,我需要从交互式命令窗口运行测试。至少根据这个帖子:Watin Tests fail on CC.Net
但是,我确实在使用/ interactive标志启动MSDild“Exec”任务时启动了cmd.exe。我试过这个
<Exec ContinueOnError="false" Command="start $(COMSPEC) /interactive /c $(SolutionDir)/Tests/RunTests.bat"/>
,它会生成一个带有相应标志的新cmd窗口,但问题似乎是ContinueOnError不再有效,因为只要生成新的cmd窗口成功,它就会成功。 bat文件可能会失败,构建仍然会继续。
有没有人知道如何使用MsBuild最好地解决此任务?
如果您对如何在TeamCity服务器上使用Watin运行集成测试而不在服务器上保留已登录用户有其他建议,请发言。
答案 0 :(得分:0)
1转到您的teamcity项目。 1.添加构建步骤 2.制作跑步者类型:命令行 3.通过自定义脚本在那里编写脚本或在那里调用脚本。
除非我弄错了并且有特定原因需要使用MSBuild? TeamCity支持除了MSBuild之外的很多工具,所以除非有特定的原因,否则我将在此步骤中避免使用它。