WU / 文档通用微前端
中文

浏览器测试与模拟应用

在浏览器中验证生命周期与 CSP,并从契约生成测试提供方。

需要 WU CLI 1.2.0,应用 API 需要 WU Framework 4.0.0。请检查 wu --version 和项目依赖。

Node 与浏览器测试

wu test
wu test --watch
npm install --save-dev @playwright/test
npx playwright install chromium
wu test --browser --csp strict --trusted-types --json

不带 --browser 时,wu test 执行 node --test 并转发其余参数及输出。带 --browser 时改用 Chromium 生命周期验证:读取配置中的应用,按需启动开发服务器,检查挂载、更新、隐藏、恢复及清理。成功返回 0,检查失败返回 1,准备失败返回 2。

选项 用途
--url <origin> 使用已有服务器。
--port <port> 启动服务器的端口,默认为 3999。
--only <app> 按名称筛选应用,可重复。
--cycles <n> 范围 2 到 20,默认为 2。
--timeout <ms> 范围 1000 到 120000,默认为 30000。
--csp <mode> 默认 scripts,也支持 strict 或 off。
--trusted-types 添加 Trusted Types 指令。
--channel <name> Chromium 通道,也可用 WU_BROWSER_CHANNEL。
--headed, --verbose, --json 可见窗口、详细输出或 JSON 报告。

生成模拟提供方

将此描述保存为工作区的 counter.json:

{ "name": "counter", "version": "1.1.0", "methods": {
  "double": { "input": { "type": "number" }, "output": { "type": "number" } }
} }
wu mock counter.json --name counter-mock --dir mf-counter-mock --json
wu install
wu dev

wu mock 生成可运行微应用、符合模式的响应及 wu.config.json 条目。可编辑 src/samples.js 修改数据;应用会展示方法与调用。默认名称由服务名加 -mock 得到,--dir 指定目录。--force 允许替换已有目标,使用前应检查其内容。

生成成功返回 0;契约、参数或项目无效返回 2。模拟应用用于按契约开发,不实现真实业务逻辑。生命周期测试也不能替代界面功能测试。发布前应验证两者。

一起完善 WU

发现了问题?有新的想法?

你的使用体验能让 WU 变得更好。告诉我们遇到的问题,或支持项目的持续开发。