c# - 使用 specflow 从 excel 读取数据并写入特征文件

标签 c# automated-tests specflow import-from-excel

我目前正在使用 specflow 进行单元测试,但我的复杂性在于我想在运行测试之前从 excel 电子表格读取(检索)我的输入数据。

例如:

当我在 XXXXX 收到产品编号为 1234567 的客户产品时

然后返回以下产品详细信息

| Model    | Product Type | SerialNumber |
| blah     | zzzzz        | 12345        |   

所以我希望基本上能够通过读取 execel 文件并写入我的特征文件来更改输入数据。以前做过吗?这可能吗?我需要安装某种插件吗?

最佳答案

您可以实现自己的步骤定义,从 Excel 工作表中读取数据。最简单的方法是将 Excel 工作表名称作为步骤参数传递,然后执行代码以从 Excel 中读取数据。要了解有关编写步骤定义的更多信息,请从此处开始:http://www.specflow.org/documentation/Step-Definitions/

或者,您可以只安装 SpecFlow+Excel,它以许多不同的方式为您提供开箱即用的功能(例如,只需将 Excel 文件链接到以纯文本功能文件编写的 Gherkin 场景,或编写和执行整个 Gherkin Excel 中的场景)。 SpecFlow+Excel还支持在(不同的)Excel文件中只指定场景大纲示例行,这不仅仅是在步骤定义中从Excel读取数据,还会影响场景生成和Excel的执行。有关 SpecFlow+Excel 的更多信息可在此处找到:http://www.specflow.org/plus/Excel/

免责声明:SpecFlow+Excel 是一个基于 SpecFlow 的商业插件,由 SpecFlow 团队维护。您可以免费试用。

关于c# - 使用 specflow 从 excel 读取数据并写入特征文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28644390/

相关文章:

C# NUnit参数化TestCaseSource值识别

c# - 使用 NuGet.targets 创建 Nuget 包

specflow - 如何在表格中传递空格(specflow 场景)?

multithreading - ChromeDriver 和 SpecRun 问题 : Only one usage of each socket address (protocol/network address/port) is normally permitted

specflow - 使用 VS2015 和 resharper 运行 Specflow 测试时遇到问题?

c# - DataTable Select 与 List<T> LINQ 性能

c# - VB.net网站转换为C#

git - 如何与 Jenkins 持续集成管理数据库

java - 如果我通过 testng.xml 运行测试,则会出现 NullPointerException,但它一次可以正常工作

outlook - Outlook 插件的自动化测试