如何使用 Selenium 在 specflow api 中进行数据驱动测试?
我们可以在 SpecFlow 中使用/不使用 Examples 关键字来进行数据驱动测试。如果我们不使用 Examples 关键字,则我们必须从 Feature 文件中的步骤(用 '' 括起)发送数据。
特性文件实现
Feature: Launching application Scenario: Launch URL Given User hits URL 'https://tutorialspoint.com/index.htm'
示例
步骤定义文件实现
using System; using TechTalk.SpecFlow; namespace SpecFlowProject1.Features{ [Binding] public class LaunchingApplicationSteps{ [Given(@"User hits URL '(.*)'")] public void GivenUserHitsURL(string url){ Console.WriteLine(url); } } }
输出
接下来,我们将使用 Examples 关键字来执行数据驱动测试。在这里,在 Scenario Outline 关键字中定义了场景。通过这种方法,我们可以在多个数据集上运行相同的场景。
数据集以行的形式在 Examples 部分下面声明。此外,每个数据都用 | 符号分隔。如果有两行数据,则表示同一个场景将使用两个不同的数据集执行两次。特性文件中的步骤应包含用 <> 括起 Examples 表格的标题。
特性文件实现
Feature: User credential Scenario Outline: Login module Given user types <username> and <password> Examples: | username | password | | tutorialspoint1| pwd | | tutorialspoint2| pwd1 |
示例
步骤定义文件实现
using System; using TechTalk.SpecFlow; namespace SpecFlowProject1.Features{ [Binding] public class UserCredentialSteps{ [Given(@"user types (.*) and (.*)")] public void GivenUserTypesUserAndPwds(string username, string password){ Console.WriteLine(username); Console.WriteLine(password); } } }
输出
使用第一个数据集 −
使用第二个数据集 −
广告