通过命令行参数运行测试

我们可以使用命令行参数控制正在运行的测试。让我们来看一个场景,其中 WebdriverIO 项目的 spec 文件夹中有四个测试文件。

您的计算机上将显示以下屏幕 −

Command-Line Parameters

假设我们只想使用命令行参数触发文件 testcase1.js 和 testcase2.js。为此,我们必须在配置文件 wdio.conf.js 文件中添加一个名为 suites 的参数。

有关如何创建配置文件的详细信息在标题为 Wdio.conf.js 文件的章节和标题为配置文件生成的章节中进行了详细讨论。

让我们假设文件 testcase1.js 和 testcase2.js 属于名为 group1 的套件,而文件 testcase3.js 和 testcase4.js 属于名为 group2 的套件。我们需要将此信息添加到 suite 参数下的 wdio.conf.js 文件中,如下所示。

suites: {
    group1: ['test/specs/testcase1.js', 'test/specs/testcase2.js'],
    group2: ['test/specs/testcase3.js', 'test/specs/testcase4.js']
},

您的计算机上将出现以下屏幕 −

Test specs

要触发属于 group1 的测试文件 testcase1.js 和 testcase2.js,我们必须运行下面给出的命令 −

npx wdio run wdio.conf.js --suite group1

您的计算机上将出现以下屏幕在您的计算机上 −

Testcase2.js

命令成功执行后,我们看到只有 specs 文件夹下的两个测试文件 testcase1.js 和 testcase2.js 被触发执行。

假设我们只想使用命令行参数触发文件 testcase3.js。要仅触发测试文件 testcase3.js,我们必须运行以下命令 −

npx wdio run wdio.conf.js --spec test/specs/testcase3.js

您的计算机上将出现以下屏幕 −

Testcase3.js

命令成功执行后,我们只看到 specs 文件夹下的测试文件 testcase3.js 被触发执行。

此外,如果我们想触发多个测试文件 testcase3.js 和 testcase4.js,命令应如下 −

npx wdio run wdio.conf.js --spec test/specs/testcase3.js, test/specs/testcase4.js

假设我们只想排除文件 testcase4.js 的执行。为此,我们必须在配置文件 wdio.conf.js 文件中的 exclude 参数下添加要排除的文件的相对路径,如下所示。

exclude: [
   // 'path/to/excluded/files'
   'test/specs/testcase4.js'
],

您的计算机上将显示以下屏幕 −

Testcase4.js

然后,我们必须运行以下命令 −

npx wdio run wdio.conf.js

您的计算机上将显示以下屏幕 −

执行成功屏幕

命令成功执行后,我们看到 specs 文件夹下的测试文件 testcase4.js 已被排除在执行之外。