如何在visual studio之外运行SpecFlow测试?

本文关键字:运行 SpecFlow 测试 visual studio | 更新日期: 2023-09-27 18:10:16

我有一套用c#编写的SpecFlow测试,使用MSTest作为框架。我知道有可能将DLL上传到MTM并在那里运行它们。

然而,我想知道是否有可能在Visual Studio之外执行这些测试。例如通过仪表板。我不想把结果上传到MTM或TFS,因为我们有几个项目没有连接到它们。

我的框架将结果上传到数据库,所以这对我来说在日志记录方面已经足够好了。

我收集我将不得不做一些从构建包含SpecFlow的项目生成的DLL,但我想避免使用反射,如果可能的话。

有谁能告诉我该怎么做吗?

如何在visual studio之外运行SpecFlow测试?

使用Specflow编写的测试只是在选定的测试框架(在您的例子中是MSTest)中进行的测试,因此您可以使用该框架的测试运行器来运行它们。

在MSTest的情况下,你可以使用MSTest.exe(位于Visual Studio目录中,可能也是TFS安装的一部分)。看看这里http://msdn.microsoft.com/en-US/library/ms182489.aspx关于如何运行测试(最简单的方法是使用/testcontainer选项)。

请注意,MSTest不是最好的测试框架,在Visual Studio外部运行和在Visual Studio内部运行是不一样的。配置文件和测试所需的单独文件存在问题。如果您遇到这些问题,您可以切换到其他测试框架(我使用NUnit)。