如何使用Jenkins安排C#单元测试?

 跳海FBA_802 发布于 2022-12-07 10:15

在过去的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团队

我希望你们中的一些人曾经走过这条路,可以分享一些见解

1 个回答
  • 可以使用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是你最好的选择.

    2022-12-11 02:10 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有