WebdriverIO - 配置文件生成

WebdriverIO 测试由配置文件控制。它通常被认为是 WebdriverIO 的核心。它包含要执行的测试用例、测试应在哪个浏览器上运行、全局信息(超时、报告、屏幕截图等)的详细信息。

在 WebdriverIO 中,我们不执行单个测试。我们需要在测试运行器的帮助下触发配置文件。测试运行器扫描配置文件中提供的信息,然后相应地触发测试。

要获取测试运行器,我们必须安装 WebdriverIO CLI 依赖项。要安装它并将其保存在 package.json 文件中,我们必须运行下面提到的命令 −

npm i --save-dev @wdio/cli

成功执行此命令后,CLI 依赖项的版本应反映在 package.json 文件中。您的计算机上将显示以下屏幕 −

命令已执行

要创建配置文件,我们必须运行下面提到的命令 −

npx wdio config -y

成功执行此命令后,将在我们的项目中创建名为 wdio.conf.js 的配置文件。此外,package.json 文件现在应该在 devDependencies 字段下包含更多依赖项。

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

wdio.conf.js

除了上图中标记的依赖项之外,我们还必须添加一个依赖项,以便 WebdriverIO 命令可以同步执行。

我们必须在 devDependencies 字段下添加依赖项 - "@wdio/sync":"<version number>"。然后运行以下命令 −

npm install

要从测试运行器运行配置文件,我们必须运行下面给出的命令 −

npx wdio run wdio.conf.js

创建 Mocha Spec 文件

创建配置文件后,我们将在 WebdriverIO 项目中找到生成的测试文件夹。有关如何创建配置文件的详细信息,请参阅标题为配置文件生成的章节。

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

创建 Mocha Spec 文件

如果我们展开此文件夹,我们会发现两个子文件夹 - pageobjects 和 specs,其中包含默认创建的 JavaScript 文件。这些基本上是提供的示例测试,以指导首次使用 Mocha 框架的用户熟悉 Mocha 框架。

Mocha 是一个基于 JavaScript 的测试框架,它建立在 Nodejs 上。它使异步测试执行流程变得有趣而简单。Mocha 测试可以连续运行。

它能够生成准确且可定制的报告。此外,未捕获的异常可以轻松地用适当的测试用例标记。 Mocha 的详细信息可以在以下链接中找到 −

www.tutorialspoint.com/tesults/tesults_integrating_your_automated_tests.htm

根据 Mocha 测试框架,所有测试文件都称为 spec 文件,它们应位于 specs 文件夹中。

测试文件中的块

测试文件应具有以下块 −

  • describe − 这在层次结构上比 it 块更高。一个测试文件可以有多个 describe 块。一个 describe 块代表一个测试套件。它有两个参数 - 测试套件的描述和一个匿名函数。

  • it − 这在层次结构上低于 describe 块。describe 可以有多个 it 块。it 块代表一个测试用例,在 describe 块中应该是必需的。它有两个参数 - 测试用例的描述和一个匿名函数。实际的 WebdriverIO 代码是在 it 块中实现的。创建 Mocha 文件的步骤

要创建 Mocha 文件,请按照以下步骤操作 −

步骤 1 − 右键单击​​ specs 文件夹(位于测试文件夹中),然后选择新建文件。您的计算机上将出现以下屏幕 −

Specs Folder

步骤 2 −输入文件名,例如 testcase1.js。

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

测试用例 1

步骤 3 − 在此文件中添加以下代码 −

// test suite name 
describe('Tutorialspoint Application', function () {
   // test case name
   it('Get Page Title', function (){
   // URL launching
      browser.url("https://www.tutorialspoint.com/about/about_careers.html")
      //print page title in console
      console.log(browser.getTitle())
   });    
});

在上面的代码中,浏览器是 WebdriverIO 公开的全局对象。

请注意 − 我们不能直接运行这个单独的文件。我们需要借助配置文件来执行它。