SpecFlow - 无需示例的数据驱动测试

我们可以在无需关键字 Examples 帮助的情况下执行数据驱动测试。这可以通过将数据直接传递给 ('') 中括起来的功能文件中的步骤来完成。然后,它将作为步骤定义文件的输入提供。

让我们验证一个模块,需要执行以下步骤 −

  • 用户启动 URL
  • URL 应该打开

步骤 1:创建功能文件

有关如何创建功能文件的详细信息在 − 功能文件一章中进行了详细讨论。

Feature: Launching application

Scenario: Launch URL
   Given User hits URL 'https://www.tutorialspoint.com/index.htm'
   Then URL should be launched

步骤 2:创建步骤定义文件

有关如何创建步骤定义文件的详细信息,请参见"步骤定义文件"一章。

using System;
using TechTalk.SpecFlow;
namespace SpecFlowProject1.Features{
   [Binding]
   public class LaunchingApplicationSteps{
      [Given(@"User hits URL '(.*)'")]
      public void GivenUserHitsURL(string url){
         Console.WriteLine(url);
      }   
      [Then(@"URL should be launched")]
      public void ThenURLShouldBeLaunched(){
         Console.WriteLine("URL should be launched");
      }
   }
}   

步骤 3:执行和结果

选择启动应用程序功能,然后单击在视图中运行所有测试。

应用程序功能

选择启动 URL 场景,然后单击打开此结果链接的其他输出。

应用程序功能

应用程序功能

在上面的输出中,获取了 URL (https://www.tutorialspoint.com/index.htm),该 URL 直接从给定步骤中的功能文件传递。