用途:为 SAPUI5 应用提供分层测试方案,明确单元、集成与端到端测试各自使用的工具与适用对象。
主要能力:单元测试用 QUnit + sinon,验证函数、formatter 与控制器;集成测试用 OPA5,在浏览器内直接与 UI5 控件交互,覆盖应用内 UI 流程与页面级操作;端到端测试用 wdi5 + WebdriverIO,在真实浏览器中跨多个应用执行完整场景。资料指出 UIVeri5 已弃用,所有 E2E 测试应迁移到 wdi5。
使用方式:安装依赖 npm install --save-dev @wdio/cli @wdio/local-runner @wdio/mocha-framework wdio-ui5-service,并用 npx wdio config 交互式生成配置;在 wdio.conf.js 中通过 services 配置 ui5 服务及 waitForUI5Timeout 等选项。wdi5 测试中用 browser.byControl 按 viewName + id 或 controlType 选择控件,可配合 ancestor 定位,并调用 isDisplayed、press、getProperty 等方法。OPA5 推荐页面对象模式,用 Opa5.createPageObjects 定义 actions 与 assertions,再通过 opaTest 编写 Given/When/Then 旅程。QUnit 用于不依赖 DOM 的逻辑。npm scripts 可组合 test:unit(ui5 test --spec test/unit)与 test:e2e(wdio run wdio.conf.js)。
适用场景:SAPUI5 应用的 formatter、控制器逻辑验证,应用内 UI 流程验证,以及跨应用的真实浏览器端到端场景。
限制与注意:避免用 DOM ID 选择控件,应使用 viewName + UI5 id 或 controlType;OPA5 应使用页面对象模式;E2E 不应针对生产环境运行,需使用带测试数据的专用测试实例。资料未提供具体版本要求、收费信息或性能数据。