如何在 Cypress 中配置 headless 模式?

阅读时长 3 分钟读完

本文将会介绍如何在使用 Cypress 进行自动化测试时配置 headless 模式,以便于在无需人工操作的情况下运行测试用例。

什么是 headless 模式?

headless 模式是指在没有 GUI(图形用户界面)的情况下运行浏览器。使用 headless 模式运行浏览器,可以使程序运行更加稳定,也可以提高程序的性能。

在 Cypress 中,可以在脚本中通过配置 headless 参数实现 headless 模式运行。

如何配置 headless 模式

在 Cypress 中同时拥有交互界面和无界面的运行方式,因此无需在代码中明确指定是否启用 headless 模式,而是在运行测试时选择。

使用命令行方式运行测试

通过命令行的方式运行测试时,可以使用 --headless 参数来指示 Cypress 以无界面的方式运行。

运行命令如下:

此处 npx cypress run 是运行 Cypress 测试的基本命令,而 --headless 参数用于指定无界面运行方式。

使用配置文件运行测试

在项目根目录下的 cypress.json 中配置 headlesstrue,以指示 Cypress 以无界面运行方式。

注意:如果在命令行中指定了 --headless 参数,则会覆盖 cypress.json 中的配置。

指定有界面运行

如果需要在有界面的情况下运行测试,则可以在命令行中不使用 --headless 参数,或者将 cypress.json 中的 headless 配置改为 false

示例代码

以下是一个简单的 Cypress 测试脚本,展示如何在代码中指定 headless 模式。

-- -------------------- ---- -------
----------------- --------- -- -- -
  ---------- ------- ---- ------- -- -- -
    -----------------------------------
    -- -------- -------- -------
    ---------------------------- -------- --------
  --
--

-- ----------
----------------- ------- -- -------- ------ -- -- -
  ---------- ------- ---- ------- -- -- -
    ----------------------------------- - --------- ---- --
    -- -------- -------- -------
    ---------------------------- -------- --------
  --
--

在第一个测试用例中,没有传递 headless 参数,因此 Cypress 框架会默认以有界面的方式运行测试。

在第二个测试用例中,通过在 cy.visit 方法中传递 { headless: true },指定了无界面运行方式。

总结

在 Cypress 中启用 headless 模式非常容易。只需要在命令行或者配置文件中设置参数即可运行。此功能使测试更加简便,并使测试套件更容易集成到 CI/CD 管道中。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/64c84ce15ad90b6d041332e4

纠错
反馈