Continuous integration 以自动化方式在Jenkins/Hudson中从开发人员到构建服务器运行单元测试
我们目前正在运行Jenkins(Hudson)CI服务器来构建和打包我们的.net web项目和数据库项目。一切都很好,但我想开始编写单元测试,然后只有在单元测试通过时才通过构建。我们正在使用内置的msbuild任务来构建web项目。使用以下参数Continuous integration 以自动化方式在Jenkins/Hudson中从开发人员到构建服务器运行单元测试,continuous-integration,jenkins,hudson,automated-tests,Continuous Integration,Jenkins,Hudson,Automated Tests,我们目前正在运行Jenkins(Hudson)CI服务器来构建和打包我们的.net web项目和数据库项目。一切都很好,但我想开始编写单元测试,然后只有在单元测试通过时才通过构建。我们正在使用内置的msbuild任务来构建web项目。使用以下参数 MsBuild Version .NET 4.0 MsBuild Build File ./WebProjectFolder/WebProject.csproj Command Line Arguments ./ta
MsBuild Version .NET 4.0
MsBuild Build File ./WebProjectFolder/WebProject.csproj
Command Line Arguments ./target:Rebuild /p:Configuration=Release;DeployOnBuild=True;PackageLocation=".\obj\Release\WebProject.zip";PackageAsSingleFile=True
我们需要对代码运行自动化测试,这些测试在我们在机器上构建时自动运行(可能是构建后事件),但在Jenkins为该项目构建时也会运行
如果您这样运行它,它不会生成单元测试项目,因为web项目没有引用测试项目。测试项目将引用web项目,但我非常确定这将破坏我们的自动化构建,因为它们主要用于构建和打包我们的部署。运行这些测试应该是自动化构建和打包过程中的一个步骤
选项。。。
我们花了大约一个星期的时间试图使这项工作顺利进行,但没有成功。如果您觉得可以得到更好的回复,请随意编辑此内容 在詹金斯/哈德逊,有很多工作是可以的。有些用于执行编译触发的版本控制更改,有些用于运行由成功构建触发的(单元)测试,有些用于执行由成功的早期测试触发的更多测试(集成),有些用于部署,由成功通过所有测试触发 看看像join、build pipeline、参数化触发器之类的插件,可以帮助解决这个问题 这也将允许通过使用多个节点并行发生事情。试图把所有的东西都塞进一份工作是不可取的