@cypress/xpath

中文文档
2.0.3发布于 2022/10/27MITTypeScriptCommonJS零依赖近 30 天下载 11.9万

将 XPath 命令添加到 Cypress.io 测试跑道

此软件包已被标记为弃用

Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

中文使用文档
文档目录5 节
  1. 用 npm 安装
  2. 用 Yarn 安装
  3. 使用
  4. 当心 XPath // 陷阱
  5. 许可证

@ cypress/ xpath( 齐声)

将 XPath 命令添加到 Cypress.io (英语) 测试跑道

用 npm 安装

npm install -D @cypress/xpath

用 Yarn 安装

yarn add @cypress/xpath --dev

那就在你的项目里加入 支持文件

require('@cypress/xpath');

使用

安装后 cy 对象将拥有 xpath 命令.

it('finds list items', () => {
  cy.xpath('//ul[@class="todo-list"]//li').should('have.length', 3);
});

也可以连锁 xpath 关闭另一个命令.

it('finds list items', () => {
  cy.xpath('//ul[@class="todo-list"]').xpath('./li').should('have.length', 3);
});

与其他cy命令一样,它的范围为: cy.within()。 。 。 .

it('finds list items', () => {
  cy.xpath('//ul[@class="todo-list"]').within(() => {
    cy.xpath('./li').should('have.length', 3);
  });
});

注释 : 您可以使用 DevTools 控制台测试 XPath 表达式 $x(...) 函数,例如 $x('//div') 找到所有潜水员.

见 cypress/e2e/ spec.cy.js (英语)

当心 XPath // 陷阱

在 XPath 中,表达式 // 意味着非常具体的东西, 它可能不是你想的那样. 与共同的信念相反, //表示"文件中的任何地方"而不是"当前上下文中的任何地方". 例如:

cy.xpath('//body').xpath('//script');

你可能期望这能找到体内的所有脚本标记,但实际上,它在整个文档中找到了所有的脚本标记,而不只是体内的脚本标记! 你要找的是.//表示"当前节点的任何后人":

cy.xpath('//body').xpath('.//script');

同样的事情,在内部:

cy.xpath('//body').within(() => {
  cy.xpath('.//script');
});

还有,看 智能代码补全

许可证

本项目的许可条件如下: 麻省理工学院许可证。 。 。 .

版本与发布记录

@cypress/xpath 共发布 2 个版本,首次发布于 2022/09/30;过去 12 个月发布了 0 个版本。

版本发布日期距今
2.0.3latest2022/10/274 年前
2.0.22022/09/304 年前

关于 @cypress/xpath 的常见问题

@cypress/xpath 是什么?

将 XPath 命令添加到 Cypress.io 测试跑道注意:该包已被作者标记为弃用——Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

如何安装 @cypress/xpath?

在项目目录运行 npm install @cypress/xpath,或使用 pnpm add / yarn add / bun add。

@cypress/xpath 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@cypress/xpath 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@cypress/xpath 可以商用吗?

@cypress/xpath 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@cypress/xpath 的下载量有多少?

根据 npm 官方下载统计,@cypress/xpath 在 2026/10/11 – 2026/11/09 这 30 天内被下载 118,673 次,日均约 3,956 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@cypress/xpath 还在维护吗?

最新版本 2.0.3 发布于 2022/10/27(4 年前);至今共发布 2 个版本,其中过去 12 个月发布了 0 个;首次发布于 2022/09/30。作者已将其标记为弃用,新项目建议寻找替代方案。