通过命令行参数运行测试
我们可以使用命令行参数控制正在运行的测试。让我们来看一个场景,其中 WebdriverIO 项目的 spec 文件夹中有四个测试文件。
您的计算机上将显示以下屏幕 −
假设我们只想使用命令行参数触发文件 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'] },
您的计算机上将出现以下屏幕 −
要触发属于 group1 的测试文件 testcase1.js 和 testcase2.js,我们必须运行下面给出的命令 −
npx wdio run wdio.conf.js --suite group1
您的计算机上将出现以下屏幕在您的计算机上 −
命令成功执行后,我们看到只有 specs 文件夹下的两个测试文件 testcase1.js 和 testcase2.js 被触发执行。
假设我们只想使用命令行参数触发文件 testcase3.js。要仅触发测试文件 testcase3.js,我们必须运行以下命令 −
npx wdio run wdio.conf.js --spec test/specs/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' ],
您的计算机上将显示以下屏幕 −
然后,我们必须运行以下命令 −
npx wdio run wdio.conf.js
您的计算机上将显示以下屏幕 −
命令成功执行后,我们看到 specs 文件夹下的测试文件 testcase4.js 已被排除在执行之外。