在过去的6个月中,我们的测试团队一直使用selenium webdriver来测试我们基于Web的产品.我们取得了巨大的成功,并继续每天使用它.我们使用visual studio,因为我们是一个.net商店来编写我们的c#单元测试.我们不对.net使用任何其他测试框架.直到最近,我们还通过visual studio(2013)中的测试浏览器窗口手动运行我们的自动化测试,检查结果,然后将它们记录到电子表格中.我知道这不太理想,但是我们没有那么多测试,所以到目前为止这对我们来说很合适.但是,我们需要编写和维护的自动化测试数量将在未来几个月内迅速增加.
我最近一直在玩创建批处理文件来调用vstest.console.exe及其各种命令,然后将这些日志添加到服务器.不理想.我知道我还可以做更多,特别是集成某种CI服务器.
我们已经在使用团队基础服务器,并且拥有各种虚拟服务器(所有运行的Windows 8.1),所以我考虑利用这一点,所以我开始研究Jenkins.麻烦的是,我没有找到关于Jenkinks和c#的更多信息.它看起来主要面向java设置.我错过了什么吗?我发现的一些小信息严重过时,对我不起作用.
我设置它并安装vstest.console.exe插件,但无法进行简单的测试.一个不在2012年之前的当前分步指南会很棒:)你们认为Jenkins是采用c#和.net框架的方法吗?在c#社区中是否使用了"标准"?我听说过巡航控制,我要检查一下.这是一个可行的选择吗?更容易使用.net?
这基本上是我们需要的:
继续在visual studio中编写我们的测试并创建c#单元测试
在远程/本地服务器上安排一系列单元测试
写出结果/日志文件 - 失败/传递的好报告功能会很棒
将该文件通过电子邮件发送给qa/dev团队
我希望你们中的一些人曾经走过这条路,可以分享一些见解
可以使用Jenkins通过批处理脚本运行测试,通过NUnit或MSTest插件向Jenkins报告.要做到这一点,只需从Jenkins执行的脚本中调用测试运行器(参见下面的链接).在我的商店中执行此操作的主要原因是Jenkins用于自动化构建过程,并且每次提升新代码时都会运行自动化测试.如果您不使用Jenkins进行构建自动化和报告 - 即您只是想要安排 - 最基本的解决方案是任务计划程序(如John O所示).另外,如果您正在使用MSTest而不是NUnit,正如其他人所建议的那样,最好还是看看TFS.
如果您真的想将Jenkins与MSTest一起使用,从配置角度来看,以下链接可能很有用:
尝试在jenkins上运行mstest时出错 - 2012年
从上面链接运行Jenkins的MSTest示例:
"C:\ Program Files(x86)\ Microsoft Visual Studio 11.0\Common7\IDE\MSTest.exe"/ testcontainer:Example.Tests\bin\Debug\Example.Tests.dll /resultsfile:TestResults.trx
Jenkins MSTestRunner插件无法启动mstest.exe - 2014
如果您可以/想要使用NUnit,请查看以下内容:
你如何从Jenkins运行NUnit测试?
用Jenkins执行NUnit
实际上,出于报告目的,登录到Excel或类似的东西并不是一个可怕的想法(特别是如果您的组织使用Sharepoint).最糟糕的是,你无法获得任何工作,然后一个解决方案是通过使用Excel的COM对象模型直接将结果写入电子表格来自动化此报告过程.
但是仍然会建议TFS是你最好的选择.