B1-B8 建立项目级流程与QA门禁
这个提交包含在:
@@ -1,5 +1,7 @@
|
||||
import { devices, expect, test, type Page, type Route, type TestInfo } from "@playwright/test";
|
||||
|
||||
test.use({ serviceWorkers: "block" });
|
||||
|
||||
function browserAgnosticDevice(name: keyof typeof devices) {
|
||||
const device = devices[name];
|
||||
return {
|
||||
@@ -408,8 +410,9 @@ test.describe("R89 移动底部导航与核心页面", () => {
|
||||
|
||||
await page.getByTestId("mobile-nav-capture").click();
|
||||
await expect(page).toHaveURL(/\/mobile\/capture/);
|
||||
await expect(page.getByText("拍照或选择文件", { exact: true })).toBeVisible();
|
||||
await page.getByTestId("mobile-capture-file").setInputFiles({
|
||||
await expect(page.getByRole("heading", { name: "票据上传" })).toBeVisible();
|
||||
await expect(page.getByRole("button", { name: /选择 PDF/ })).toBeVisible();
|
||||
await page.getByTestId("mobile-capture-pdf-file").setInputFiles({
|
||||
name: "r89-invoice.pdf",
|
||||
mimeType: "application/pdf",
|
||||
buffer: Buffer.from("%PDF-1.4\n% R89"),
|
||||
@@ -425,22 +428,18 @@ test.describe("R89 移动底部导航与核心页面", () => {
|
||||
});
|
||||
});
|
||||
|
||||
test.describe("R89 小屏桌面菜单兜底", () => {
|
||||
test.describe("R89 小屏移动路由兜底", () => {
|
||||
test.use(browserAgnosticDevice("Pixel 5"));
|
||||
|
||||
test("非移动路由的小屏菜单可以打开并关闭", async ({ page }) => {
|
||||
test("非移动路由在小屏场景会转到移动通知页", async ({ page }) => {
|
||||
await mockR89Apis(page);
|
||||
|
||||
await loginByPassword(page);
|
||||
await page.getByTestId("mobile-nav-me").click();
|
||||
await page.getByRole("link", { name: /通知中心/ }).click();
|
||||
|
||||
await expect(page).toHaveURL(/\/notifications/);
|
||||
await page.getByRole("button", { name: "打开菜单" }).click();
|
||||
await expect(page.getByRole("button", { name: "关闭菜单" })).toBeVisible();
|
||||
await expect(page.getByRole("link", { name: "Portal" })).toBeVisible();
|
||||
|
||||
await page.getByRole("button", { name: "关闭菜单" }).click();
|
||||
await expect(page.getByRole("button", { name: "关闭菜单" })).toBeHidden();
|
||||
await expect(page).toHaveURL(/\/mobile\/notifications/);
|
||||
await expect(page.getByTestId("mobile-nav-home")).toBeVisible();
|
||||
await expect(page.getByRole("button", { name: "打开菜单" })).toHaveCount(0);
|
||||
});
|
||||
});
|
||||
|
||||
在新工单中引用
屏蔽一个用户