问题标签 [specrun]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
135 浏览

c# - FF 45 + Selenium 2.53 停止工作

好吧,从上周开始,我一直在努力将我的 FF 脚本更新到 45,将 selenium webdriver 更新到 2.53,并将 selenium 支持更新到 2.53,我完成了它,突然 FF45 停止工作。喜欢它打开浏览器但不输入网址。看起来像 Firefox 实例化问题,但它是如何工作到现在的?我根本没有改变我的配置中的任何东西。当我从 jenkins 运行它时,它会给出错误,例如https://wiki.jenkins-ci.org/display/JENKINS/Spawning+processes+from+build 并且由于 StackOverflowException 而终止进程。

我的包裹详情如下。

刚刚调试了我的代码,它给出了以下错误。{“抛出了‘System.StackOverflowException’类型的异常。”}

任何人都可以提供帮助吗?

0 投票
2 回答
1120 浏览

c# - 使用 NUnit 执行功能文件

我正在尝试使用 NUnit 控制台运行功能文件。我试着用谷歌搜索它并检查了 NUnit3 帮助。但我找不到任何帮助。我想在分配了标签的功能文件中运行单个功能文件或任何场景。我正在使用带有 specrun 的 specflow。我尝试了 NUnit 控制台命令,其中“test == 功能文件的路径”,但它没有执行测试。但是,我可以通过提供项目 dll 文件路径来执行所有测试用例。但我只想在功能文件中执行单个功能文件或单个场景。请让我知道如何执行此操作,以便能够生成 NUnit testresult.xml 文件。谢谢。

0 投票
2 回答
478 浏览

specrun - 在 VS2015 中运行 Specrun 并使用“Baseclass.contrib.Specflow”进行跨浏览器参数化测试

我想将 SpecRunner 与库“Baseclass.Contrib.SpecFlow.Selenium.NUnit”一起使用。当我从 Manage Nuget Packages 添加 SpecFlow 2 的 SpecRunner 时,单元测试提供程序是 app.config 中的“SpecRun”。然后,当使用 Manage Nuget Package 将“Baseclass.Contrib.SpecFlow.Selenium.NUnit”添加到解决方案时,它还添加了“SeleniumNUnit”的单元测试提供程序。当我创建我的功能文件和步骤定义并尝试使用带有“@Browser:Chrome”之类的浏览器标签注释的每个功能运行测试并在我的绑定方法中使用“Browser.Current”语法作为网络驱动程序时,它给了我一个错误。错误首先是我在 app.config 中有两个单元测试提供程序,而 app.config 只能有一个单元测试提供程序。所以我注释掉了第一个单元测试提供者,

*错误 2 #error:'生成错误:无法加载文件或程序集'TechTalk.SpecFlow,版本 = 1.9.0.77,文化 = 中性,PublicKeyToken = 0778194805d6db41'或其依赖项之一。该系统找不到指定的文件。' C:\Users\amaddox\documents\visual studio 2013\Projects\SpecFlow\SpecFlow\SpecFlowFeature1.feature.cs 1 8 SpecFlow *

*错误 33 自定义工具错误:生成错误:无法加载文件或程序集“TechTalk.SpecFlow,版本=1.9.0.77,文化=中性,PublicKeyToken=0778194805d6db41”或其依赖项之一。该系统找不到指定的文件。C:\Users\amaddox\documents\visual studio 2013\Projects\SpecFlow\SpecFlow\SpecFlowFeature1.feature 2 2 SpecFlow *

因此,我尝试取消注释第一个并评论第二个单元测试提供者。同样的问题。如何在 Visual Studio 2015 中运行 SpecRun 以及“Baseclass.Contrib.SpecFlow.Selenium.NUnit.Bindings”必须提供的参数化跨浏览器测试功能的灵活性?似乎它希望我回到以前版本的 Specflow (1.9),我正在使用 Specflow 2。不知道该怎么做。我该如何解决这个问题?

*

0 投票
0 回答
471 浏览

specrun - Specrun 命令行过滤器按功能名称

如何使用功能名称过滤器运行 Specrun

Default.srprofile 的片段:

Cmd: SpecRun.exe 运行 Default.srprofile /filter:"features:Feature:FeatureName"

这里来自 github 的示例:

https://github.com/mikeborozdin/BDD-with-SpecFlow-and-White/blob/master/packages/SpecRun.0.13.0.72/docs/Filtering/03_TestPathFiltering.feature

0 投票
2 回答
239 浏览

debugging - 在 Visual Studio 控制台上进行调试时如何找出正在执行的 specflow 步骤

我正在使用 visual studio 2015 和 specflow 。一切看起来都不错,但出于好奇,我如何才能看到正在调试哪个步骤以及我在哪个步骤上。如果我使用 Nunit 提供程序运行测试,那么它会显示所有步骤信息,但在调试时它没有显示。有什么建议吗?

0 投票
1 回答
1975 浏览

c# - 在 SpecFlow SpecRun 中,如何使用 .bat 文件运行 Specrun.exe 而不是 runtests.cmd?

我知道 runtests.cmd 使用 .bat 文件使用 "C:\Users\username\Documents\Visual Studio 2015\Projects\blah\blahblah\runtests.cmd" 工作。但由于我的 Team City 设置中有一个 MSBuild 步骤,我不想重新运行由 runtests.cmd 触发的构建步骤

所以我尝试通过指定“C:\Users\username\Documents\Visual Studio 2015\Projects\blah\packages\SpecRun.Runner.1.5.2\tools\SpecRun.exe 创建一个仅运行 Specrun.exe 的 .bat 文件运行 Default.srprofile "/baseFolder:C:\Users\username\Documents\Visual Studio 2015\Projects\blah\blahblah\bin\Debug" /log:specrun.log" 。

然而,这里的问题是 Specrun.exe 需要 /baseFolder 在引号中指定,bat 命令也是如此,它错误地说“C:\Users\nandyu\Documents\Visual Studio 2015\Projects\SpecFrame\packages\SpecRun.Runner .1.5.2\tools\SpecRun.exe run Default.srprofile" 不是内部或外部命令。

现在,这里的问题是批处理执行与命令中的多个引号混淆。/baseFolder 是否必须在双引号 "/baseFolder :path" 中提及?还是有其他方法来指定 /baseFolder 参数?

0 投票
2 回答
1589 浏览

c# - 如何仅针对特定场景运行 Specflow AfterStep Hooks

我有我的 Weba 自动化框架,我正在为 API 级别测试添加一些场景。在我的 Hooks “After step”中,我想让它以不同的方式用于 API 级别测试。就像不要去默认的“步骤之后”。我怎样才能做到这一点 ?

我已将标签添加到功能级别并尝试使用该标签,但它仍然是旧的 Afterstep。

原始后步

当然,我需要将新的 Afterstep 挂钩的方法名称更改为“Aftersteps”。

请帮助我这里有什么问题?

0 投票
1 回答
827 浏览

nunit - 如何使用 Specrun for NUnit 实现并行执行

我已经安装了以下 NuGet:Specflow.Nunit、specflow、Specrun.Nunit 以及 NUnit 2.6.3。 我正在尝试执行 runtests.cmd(由 specrun.nunit 自动生成),但出现以下错误:

TechTalk.SpecRun.Framework.SpecRunException:至少一个测试线程中止。---> System.Reflection.TargetInvocationException:调用的目标已抛出异常。---> System.MissingMethodException:找不到方法:'Void TechTalk.SpecRun.SpecRunner.Initialize()'。 我的 default.srprofile 包含:

同样在 VS 输出窗口上,我收到此错误:无法加载文件或程序集 'TechTalk.SpecRun, Version=1.3.0.76, Culture=neutral, PublicKeyToken=d0fc5cc18b3b389b' 或其依赖项之一。该系统找不到指定的文件。 有人可以帮我吗?

0 投票
2 回答
753 浏览

c# - 无论如何,我们可以在 Specflow 中创建类似于 TestNG 的功能文件测试套件吗?

试图创建一个测试套件,我不想在其中包含所有功能文件。那可能吗?这是在 TestNG.xml 测试套件的行中。Specflow 是否提供任何此类功能?Default.srprofile 中是否有任何标签文档,我可以使用这些文档来包含/排除我想要运行的功能文件?

0 投票
1 回答
871 浏览

cucumber - Specflow 并行执行类别 [标签]

我有大约 6000 个 specflow [版本 1.9.0.77] 测试,这些测试分为 10 个类别 [标签],每个类别大约有 600 个测试用例,大约需要一个小时才能完成。目前我正在使用 Nunit 2.6.4 执行测试 [按顺序执行] 并从 Nunit 测试报告 xml 生成 Specflow 流报告。
我打算将顺序执行模型移动到并行执行以减少测试执行时间。没有静态引用,没有功能或场景上下文,并且测试数据对于测试用例是唯一的。我使用 Specflow 2.0 探索了 Nunit 3.5,但找不到通过类别或标签并行运行测试的解决方案。每次它按顺序运行。

我按照页面http://www.specflow.org/documentation/Parallel-Execution/设置并行执行但对我不起作用。

有什么想法吗?