This repository has been archived on 2025-04-22. You can view files and clone it, but cannot push or open issues or pull requests.
hlk_autotest/tests/fixtures/staffFixture.ts
LingandRX 345e68a1b4 refactor(tests): 重构测试代码并优化环境变量配置
- 更新环境变量配置方式,使用 dotenv 库
- 重构员工登录和权限相关代码,提高可维护性
- 优化测试数据结构,增加类型注解
- 删除冗余代码,提高代码可读性
2025-01-01 13:02:27 +08:00

41 lines
1.3 KiB
TypeScript

import { test as base } from '@playwright/test';
import { HomeNavigation } from '@/pages/homeNavigationPage.js';
import { TransferManagementPage } from '@/pages/inventory';
export const test = base.extend({
firstStaffPage: async ({ browser }, use) => {
const context = await browser.newContext({
storageState: '.auth/user_1.json',
});
const page = await context.newPage();
await page.goto(process.env.BASE_URL ?? '');
await use(page);
await context.close();
},
secondStaffPage: async ({ browser }, use) => {
const context = await browser.newContext({
storageState: '.auth/user_2.json',
});
const page = await context.newPage();
await page.goto(process.env.BASE_URL ?? '');
await use(page);
await context.close();
},
/**
* @type { HomeNavigation }
*/
staffHomeNavigation: async ({ firstStaffPage }, use) => {
const homeNavigation = new HomeNavigation(firstStaffPage);
await use(homeNavigation);
},
/**
* @type { TransferManagementPage }
*/
transferManagementPage: async ({ firstStaffPage }, use) => {
const transferManagementPage = new TransferManagementPage(firstStaffPage);
await use(transferManagementPage);
},
});
export { expect } from '@playwright/test';