- 统一品牌为 Nex:侧边栏、托盘 tooltip、HTML 标题、favicon (PNG 替代 SVG) - 重构关于页面为三卡片布局(品牌/版本/链接),版本状态 Tag 绝对定位右上角 - 新增 GET /api/version 后端接口,返回 version/commit/build_time - 新增前端版本一致性诊断:匹配/不匹配/不可判断三种状态 - 同步 delta specs 到主 specs 并归档变更
61 lines
2.3 KiB
TypeScript
61 lines
2.3 KiB
TypeScript
import { test, expect } from '@playwright/test'
|
|
|
|
test.describe('侧边栏', () => {
|
|
test.beforeEach(async ({ page }) => {
|
|
await page.goto('/providers')
|
|
await expect(page.getByRole('heading', { name: '供应商管理' })).toBeVisible()
|
|
})
|
|
|
|
test('应显示侧边栏', async ({ page }) => {
|
|
const aside = page.locator('aside')
|
|
await expect(aside).toBeVisible()
|
|
})
|
|
|
|
test('应显示应用名称', async ({ page }) => {
|
|
await expect(page.locator('aside').getByText('Nex')).toBeVisible()
|
|
})
|
|
|
|
test('应显示导航菜单项', async ({ page }) => {
|
|
const aside = page.locator('aside')
|
|
await expect(aside.getByText('供应商管理')).toBeVisible()
|
|
await expect(aside.getByText('用量统计')).toBeVisible()
|
|
})
|
|
})
|
|
|
|
test.describe('页面导航', () => {
|
|
test.beforeEach(async ({ page }) => {
|
|
await page.goto('/providers')
|
|
await expect(page.getByRole('heading', { name: '供应商管理' })).toBeVisible()
|
|
})
|
|
|
|
test('应能切换到用量统计', async ({ page }) => {
|
|
await page.locator('aside').getByText('用量统计').click()
|
|
await expect(page.getByRole('heading', { name: '用量统计' })).toBeVisible()
|
|
})
|
|
|
|
test('应能切换回供应商管理', async ({ page }) => {
|
|
await page.locator('aside').getByText('用量统计').click()
|
|
await expect(page.getByRole('heading', { name: '用量统计' })).toBeVisible()
|
|
|
|
await page.locator('aside').getByText('供应商管理').click()
|
|
await expect(page.getByRole('heading', { name: '供应商管理' })).toBeVisible()
|
|
})
|
|
|
|
test('应能切换到关于页面并显示版本信息', async ({ page }) => {
|
|
await page.locator('aside').getByText('关于').click()
|
|
|
|
await expect(page.getByRole('heading', { name: '关于' })).toBeVisible()
|
|
await expect(page.getByRole('heading', { name: 'Nex' })).toBeVisible()
|
|
await expect(page.getByText('前端版本')).toBeVisible()
|
|
await expect(page.getByText('后端版本')).toBeVisible()
|
|
})
|
|
|
|
test('应在刷新后保持当前页面', async ({ page }) => {
|
|
await page.locator('aside').getByText('用量统计').click()
|
|
await expect(page.getByRole('heading', { name: '用量统计' })).toBeVisible()
|
|
|
|
await page.reload()
|
|
await expect(page.getByRole('heading', { name: '用量统计' })).toBeVisible()
|
|
})
|
|
})
|