
对于不断发展的Web景观,快速,可扩展和可靠的测试解决方案。
Testplane(Ex-Hermione)是一个战斗的框架,用于在任何规模,任何浏览器和任何平台上测试Web应用程序。
? 开发人员友好:从我们的安装向导,打字稿支持,通过实时测试编辑,高级HTML-Reporter以及智能功能(如自动等待)等智能功能,享受无忧的开始。
?视觉测试重新定义:捕获从特定细节到整个页面的任何内容,使用简化的UI管理DIFF,探索各种差异模式,并让测试平面铲球片状。
跨环境测试:忘记与几个最新的镀铬构建相关。测试平面超越了此功能,可在真实设备和广泛的自动化协议支持上提供测试,从而反映用户的实际环境。
?毫不费力地扩展:在远程浏览器网格上进行数千个测试或从超快速的本地执行中受益。测试平面提供碎片,并行测试执行和隔离浏览器上下文。
⚡无限的可扩展性: Testplane提供了一个多功能插件系统,在Github上使用数十个开源插件,以及自定义的记者,命令和执行逻辑。
?各种测试环境:使用Testplane,您不仅可以在Node.js环境中运行测试,还可以在浏览器中运行测试。这意味着您可以在Node.js和浏览器中的组件/单元测试中运行E2E/集成测试。
注意:如果您希望手动安装,则可以运行
npm i -D testplane。查看文档以获取详细信息。
使用CLI向导设置测试平面并生成基本配置:
npm init testplane@latest new-testplane-project您可以添加-- --verbose参数以在特定问题模式下启动工具,以选择自定义软件包管理器或安装额外的插件。
打开新生成的文件testplane-tests/example.testplane.ts 。我们将修改测试以确保描述包括预期文本:
describe ( "test" , ( ) => {
it ( "example" , async ( { browser } ) => {
await browser . url ( "https://example.com/" ) ;
const description = await browser . $ ( "p" ) ;
await expect ( description ) . toHaveTextContaining ( "for use in illustrative examples in documents" ) ;
} ) ;
} ) ;发射GUI:
npx testplane gui尝试运行测试并观看通过。现在,让我们用视觉断言替换描述文本检查。使用assertView命令进行视觉检查:
- await expect(description).toHaveTextContaining("for use in illustrative examples in documents");
+ await description.assertView("description"); // "description" is just a name of the assertion再次运行测试。它将失败,因为缺少标题的参考图像。您可以接受差异并重新运行测试,然后通过。
恭喜您编写了您的第一个测试平面测试,该测试将导航到页面并执行视觉断言。潜入文档,以发现测试计划必须提供的更多令人敬畏的功能!
您可以在我们的网站上找到文档。
随时访问这些页面,以简要概述一些测试平面功能:
我们在网站上发布最实际的信息,指南和更改。您可以通过将拉力请求发送到此存储库来改进它。
该项目以前被称为“赫敏”,但最终出现了一些版权和商标问题,导致决定重塑品牌。经过一些讨论,我们定居“测试平面”作为官方新标题。考虑到这种变化仅仅是重塑品牌,我们进行了现有版本的数量,而不是重新开始。因此,Testplane v8.x是Hermione v8.x的倒入替代品。
了解有关文档中从赫敏到测试平面的迁移的更多信息。
我们使用此存储库的使命是使测试平面开发过程打开,同时继续改善其功能,性能和易用性。我们希望其他组织在我们的项目中找到价值,并从我们的工作中受益。
我们欢迎并感谢社区贡献。为了确保我们的努力同步,我们建议提出问题或事先发表评论。
访问我们的贡献指南,以了解有关我们的开发过程以及如何参与的更多信息。
测试计划已获得麻省理工学院许可。