c# - 如何在我的错误日志中使用步骤的名称? NUnit、Specflow、C#

标签 c# testing nunit specflow scenarios

我将自动化测试作为端到端场景,因此我有多个 Thens,例如

Scenario: My scenario
Given a
When b
Then check something 1
When c
Then check something 2
When d
And e
Then check something 3

我知道您可以访问测试的名称 TestContext.CurrentContext.Test.Name,您可以将其插入到错误日志中,但我似乎找不到获取步骤名称的方法。

当场景失败时,我想知道它在哪个 Then 语句上失败,例如...

string errorLog += "Scenario \"" + TestContext.CurrentContext.Test.Name + "\" failed on test step: \"" + testStepName + "\"."

...应该产生这样的东西:

Scenario "My scenario" failed on test step: "Then check something 2".

这可能吗?

谢谢

最佳答案

查看ScenarioStepContext classStepInfo.Text 属性。有一个 pull request添加功能以公开当前步骤类型和文本

关于c# - 如何在我的错误日志中使用步骤的名称? NUnit、Specflow、C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58028653/

相关文章:

c# - 填充没有 double 的矩阵

c# - 无法使用 ASP/C# 动态向表添加多行

static string[] contains() (slooooow) 与 == 运算符的 C# 性能

ruby-on-rails - 使用 RSpec 测试 acts_as_nested_set 模型

testing - 如何重写此 select 语句以保证 100% 的测试覆盖率?

c# - NUnit 下无效的 System.Uri 解析

c# - DataGridView RowsAdded 事件处理程序不工作?

c++ - 在 XCode 4.4.1 上构建 gtest 框架

将数据重构为另一个类的 NUnit testcasesource

c# - 从 AutoFixture/AutoMaq 请求模拟时,NUnit 会忽略测试