init: 2026Technology-Competition initial commit
This commit is contained in:
@@ -0,0 +1,45 @@
|
||||
import { test, expect } from '@playwright/test'
|
||||
import { uiLogin } from '../utils/auth'
|
||||
import { createIssueViaApi, deleteIssueViaApi } from '../utils/api-helpers'
|
||||
|
||||
test.describe('Agent 驾驶舱', () => {
|
||||
let apiToken = ''
|
||||
let issueId = 0
|
||||
|
||||
test.beforeEach(async ({ page, request }) => {
|
||||
const created = await createIssueViaApi(request)
|
||||
issueId = created.issue.id
|
||||
apiToken = created.token
|
||||
await uiLogin(page)
|
||||
})
|
||||
|
||||
test.afterEach(async ({ request }) => {
|
||||
if (issueId) {
|
||||
await deleteIssueViaApi(request, issueId, apiToken).catch(() => {})
|
||||
}
|
||||
})
|
||||
|
||||
test('执行指令后显示工具卡片', async ({ page }) => {
|
||||
test.setTimeout(560000)
|
||||
await page.goto(`/issues/${issueId}`)
|
||||
await expect(page.getByText('IMS Agent 驾驶舱')).toBeVisible()
|
||||
|
||||
await page.getByPlaceholder(/给 Agent 下达指令/).fill('查找知识库相似案例并生成对应方案')
|
||||
await page.getByRole('button', { name: /执行指令/i }).click()
|
||||
|
||||
// 模型输出工具调用后 SSE 渲染工具卡片(真实模型可能只输出 search_knowledge,不强依赖具体工具)
|
||||
await expect(page.getByText(/call:/).first()).toBeVisible({ timeout: 480000 })
|
||||
})
|
||||
|
||||
test('写工具触发审批后可批准', async ({ page }) => {
|
||||
test.setTimeout(480000)
|
||||
await page.goto(`/issues/${issueId}`)
|
||||
await page.getByPlaceholder(/给 Agent 下达指令/).fill('请调用 update_issue 工具,把本指摘的优先级改为 high')
|
||||
await page.getByRole('button', { name: /执行指令/i }).click()
|
||||
|
||||
await expect(page.getByText('需要您的审批')).toBeVisible({ timeout: 420000 })
|
||||
await page.getByRole('button', { name: /批准执行/i }).click()
|
||||
await expect(page.getByText('已批准执行')).toBeVisible({ timeout: 30000 })
|
||||
await expect(page.getByText(/Agent 指令已批准/)).toBeVisible({ timeout: 30000 })
|
||||
})
|
||||
})
|
||||
Reference in New Issue
Block a user