Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 构建后运行自动验收测试的框架?_C#_.net_Tfs_Continuous Integration_Acceptance Testing - Fatal编程技术网

C# 构建后运行自动验收测试的框架?

C# 构建后运行自动验收测试的框架?,c#,.net,tfs,continuous-integration,acceptance-testing,C#,.net,Tfs,Continuous Integration,Acceptance Testing,在我当前的项目中,我们使用TFS构建服务器进行持续集成(构建+运行单元测试)。我们还拥有一套作为SpecFlow特性编写的自动验收测试 但是,这些未集成到持续集成工作流中。现在,应用程序是手动部署的,验收测试是手动调用的 我们希望以脚本/控制台应用程序或某种现有CI工具的形式实现自动化 这是我们希望定期执行的操作,例如每小时执行一次: 询问TFS是否有任何新版本 如果是:从TFS获取最新的成功生成 将应用程序部署到我们的测试机器上 对部署的构建执行SpecFlow测试 收集结果并将其显示在某种形

在我当前的项目中,我们使用TFS构建服务器进行持续集成(构建+运行单元测试)。我们还拥有一套作为SpecFlow特性编写的自动验收测试

但是,这些未集成到持续集成工作流中。现在,应用程序是手动部署的,验收测试是手动调用的

我们希望以脚本/控制台应用程序或某种现有CI工具的形式实现自动化

这是我们希望定期执行的操作,例如每小时执行一次:

  • 询问TFS是否有任何新版本
  • 如果是:从TFS获取最新的成功生成
  • 将应用程序部署到我们的测试机器上
  • 对部署的构建执行SpecFlow测试
  • 收集结果并将其显示在某种形式的网页上

  • 是否有任何现有的工具或框架用于此?我读过关于现有CI服务器的文章,但它们似乎不符合我的描述。如果没有,关于如何通过编程或使用命令行工具实现步骤1、2和5的任何建议?

    以我的拙见,TFS能够完成您列出的所有操作,而无需使用任何其他工具。您可能需要做的是设置一个实验室环境,并使用特定的工作流构建定义来实现它。您还需要测试控制器和测试代理。 最简单的方法可能是设置标准的实验室环境,其工作方式如下- 构建-部署-测试工作流

    生成被触发,然后部署到实验室环境中(可能是一堆物理或虚拟机,上面安装了测试代理,并连接到测试控制器),然后执行所有测试,并将结果合并为生成结果的一部分

    希望这有点帮助


    -Rado

    完全同意!在项目中使用TFS时,我们也会对其执行相同的操作。构建编译、运行单元测试、执行代码分析和部署的定义。如果已经投资TFS,则不需要其他工具!