Applitools是什么?
Applitools是一个市场领先的、由人工智能驱动的视觉测试和监控平台,专为软件开发和测试团队设计。它超越了传统的功能测试,专注于用户实际看到的内容,确保在所有设备、浏览器和屏幕尺寸上提供视觉上完美的用户体验。利用其先进的视觉AI,Applitools能够智能地识别和标记非预期的视觉错误,同时忽略微小、无关紧要的变化,从而显著减少误报和测试维护开销。
主要功能
- 视觉AI: Applitools的核心是其先进的AI引擎,它模仿人眼和大脑。它能理解UI元素和布局,只捕捉有意义的视觉回归,而不是简单的像素差异。
- 跨浏览器和设备测试: Ultrafast Grid允许您运行一次测试,并立即在无数浏览器、设备和视口的组合中渲染快照,以极短的时间确保全面的覆盖。
- 自动化维护: 该平台智能地将相似的UI更改分组,允许测试人员一键接受或拒绝它们。它还可以自动将更新传播到基准图像,从而从微小的UI调整中“自我修复”测试。
- SDK和集成: Applitools为超过30种测试框架和语言提供广泛的SDK,包括Selenium、Cypress、Playwright和WebdriverIO。它无缝集成到现有的CI/CD流水线和错误跟踪系统中。
- 可访问性测试: 它包含自动检测可访问性问题(如颜色对比度问题)的功能,帮助团队遵守WCAG标准并构建更具包容性的应用程序。
使用案例
- 自动化回归测试: 在回归周期中自动验证整个应用程序的UI,以便在视觉错误进入生产环境之前捕捉它们。
- 组件库验证: 将Applitools与Storybook等工具结合使用,以视觉方式独立测试UI组件,确保设计系统的一致性并防止回归。
- 跨浏览器兼容性: 快速验证您的Web应用程序在所有目标浏览器和设备上都能正确呈现,而无需为每个浏览器和设备编写和维护单独的测试脚本。
- PDF和文档验证: 将视觉测试扩展到非浏览器内容,如PDF、报告和发票,以确保它们正确生成。
入门指南
这是一个使用Applitools和Cypress的简单“Hello World”风格示例。首先,安装Applitools Cypress SDK:
```bash npm install @applitools/eyes-cypress –save-dev
接下来,将您的Applitools API密钥设置为环境变量:
```bash export APPLITOOLS_API_KEY=”您的API密钥”
现在,您可以将视觉测试添加到任何Cypress测试中。cy.eyesOpen()命令启动测试,cy.eyesCheckWindow()拍摄快照,cy.eyesClose()结束测试并将结果发送到Applitools仪表板。
```javascript // cypress/integration/example.spec.js describe(‘我的第一个视觉测试’, () => { it(‘应该看起来和基准一样’, () => { cy.visit(‘https://applitools.com/helloworld’);
// 开始视觉测试
cy.eyesOpen({
appName: 'Hello World应用',
testName: '我的第一个Cypress测试!',
browser: { width: 800, height: 600 },
});
// 拍摄页面快照
cy.eyesCheckWindow('主页面');
// 结束视觉测试
cy.eyesClose(); }); });
定价
Applitools提供基于订阅的定价模型。他们有一个适合个人开发者和小型项目的免费计划,以及为团队和企业提供的付费计划,这些计划提供更高级的功能、更高的并发性和无限次测试。有关详细的企业定价,通常需要联系他们的销售团队。