Specflow方案大纲-更改自动生成的测试名称

问题描述

我正在使用Specflow在Visual Studio 2019中编写BDD自动化测试,并使用Nunit3运行它们。

当我用“示例”表编写方案大纲时,它看起来像:

Scenario Outline: NP10_New_Record_Details_Tab_Info

Examples: 
| prod     | Desc         | date       | quantity |
| Prod010a | Product 010a | 01/10/2020 | 10.00    |
| Prod010b | Product 010b | 02/10/2020 |          |

然后,Test Explorer中的测试名称如下:

Test Name:  NP10_New_Record_Details_Tab_Info("Prod010a","Product 010a","01/10/2020","10.00",null)
Test Name:  NP10_New_Record_Details_Tab_Info("Prod010b","Product 010b","02/10/2020","",null)

有什么方法可以操纵完整的测试名称,以便它不会在名称显示示例表的每个列值? 我看过一些在线建议,例如在“示例”表中添加一个虚拟列“ Test_ID”,然后在方案大纲名称添加”,但这只会将其转换为文本而不是参数。

是否可以重新配置完整的测试名称? -当我查看在线建议时,看不到其他测试,像我的一样,在测试名称的方括号中显示了每一列。它不是很可读。

解决方法

复制的答案来自:https://support.specflow.org/hc/en-us/profiles/373373154558-Andreas-Willich


我认为这是NUnit场景的显示方式。据我记得我们曾尝试对其进行改进({​​{3}}),但是测试适配器存在/存在问题,因此我们需要收回更改。

据我所知,SpecFlow + Runner和xUnit在方案概述的测试浏览器中拥有更好的测试/方法名称。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...