在 Cypress 中构建基本测试
一旦 Cypress 安装完成并且测试运行器成功设置,我们将在 examples 文件夹下创建一个 JavaScript 文件。这属于 Cypress 框架模板提供的 **integration** 文件夹。
为了创建一个 Cypress 测试,我们需要遵循任何 Javascript 测试框架,例如 Jasmine 或 Macha。我们必须实现我们的 Cypress 测试,并借助这些框架使其可运行。
Mocha 框架默认情况下与 Cypress 安装捆绑在一起。我们将遵循下面列出的规则,这些规则受 Mocha 或 Jasmine 框架支持 -
首先,我们应该有一个包含单个或多个测试用例的测试套件块。这是通过 describe 函数实现的。
在测试套件内,我们将拥有测试用例块。这是通过 it() 函数实现的。
在每个 it 函数内,我们将为每个测试用例提供单独的测试步骤。
代码实现。
// test suite describe('Tutorialspoint Test', function () { // test case it('Test Case1', function (){ // test step to launch a URL cy.visit("https://tutorialspoint.com/index.htm"); }); });
在上面的代码中,**cy** 是一个全局命令,它使我们能够调用任何 Cypress 命令。这个 **cy** 不需要任何对象声明,它在下载节点模块时会自动出现。visit() 方法用于启动任何 Web 应用程序。
完成后,我们将在测试运行器中找到此 JavaScript 文件,并且只需单击它即可从那里运行测试用例。
要从命令行运行测试用例,我们需要运行命令 **./node_modules/.bin/cypress run**。如果执行此命令,则 examples 文件夹下的所有测试用例都会被触发。但是,如果我们想运行特定的测试用例,我们需要运行命令 **cypress run –spec "<<spec 文件的路径>>"**。
请注意,从命令行运行时,Cypress 测试用例在无头模式下并在 Electron 浏览器中自动运行。
要在有头模式下运行相同的测试用例,命令为 **./node_modules/.bin/cypress run --headed**。
现在让我们讨论一下我们在 Cypress 测试框架上具有的文件夹结构。
Fixtures - 所有测试数据信息都存储在 fixtures 中,以便可以轻松加载到我们的测试用例中。数据以键值对的形式存储在此处。因此,它有助于在很大程度上减少代码行数。
Integration - 所有测试用例都在 integration 文件夹内创建。
Plugins - 此文件夹包含所有 Cypress 事件。我们可以拥有自定义代码来处理 before 和 after 事件。
Support - 所有可重用方法都在 support 文件夹内创建,以便它们可以直接用于测试用例。
Videos - 所有测试步骤执行都记录在此文件夹中并存储在此文件夹中。
node_modules - 这是 Cypress 测试执行的主要文件夹。
cypress.json - 要更改默认的 Cypress 配置,将使用此文件夹。我们需要在此处设置新的配置,这将覆盖默认配置。
package.json - 所有项目依赖项和脚本都包含在此处。