From eb02e33a51ceb129eaa9e8a7ba72ca65854f9053 Mon Sep 17 00:00:00 2001
From: yeg <1347747024@qq.com>
Date: 星期二, 08 九月 2026 19:45:39 +0800
Subject: [PATCH] 集成最终回归脚本与现行业务契约对齐

---
 tests/e2e/test-required-device-bindings.spec.ts |   18 ++++++++++--------
 1 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/tests/e2e/test-required-device-bindings.spec.ts b/tests/e2e/test-required-device-bindings.spec.ts
index 6165a89..058e0f8 100644
--- a/tests/e2e/test-required-device-bindings.spec.ts
+++ b/tests/e2e/test-required-device-bindings.spec.ts
@@ -54,7 +54,7 @@
   }, { requestPath: path, requestInit: init }) as Promise<T>
 }
 
-test('测试创建保存必填双设备绑定、可选映射和字段快照', async ({ page }) => {
+test('测试创建保存必填双设备绑定、可选映射并读取电池组当前字段', async ({ page }) => {
   const suffix = Date.now()
   const cabinetName = `Ticket07检测柜${suffix}`
   const collectorName = `Ticket07采集器${suffix}`
@@ -178,12 +178,12 @@
     await expect(page.locator('.battery-table tbody tr').first().locator('.el-select').last()).toContainText('S-05')
   })
 
-  await test.step('后端拒绝重复映射并保留测试共享字段快照', async () => {
+  await test.step('后端拒绝重复映射并按测试电池读取共享字段当前值', async () => {
     const detail = await apiJson<{ code: number; data: Record<string, any> }>(page, `/system/test/${testId}`)
     expect(detail.code).toBe(200)
-    expect(detail.data.fieldSnapshots).toEqual(expect.arrayContaining([
-      expect.objectContaining({ fieldName, fieldValue: '72' }),
-    ]))
+    expect(detail.data.batteries.find((battery: Record<string, any>) => battery.batteryNo === batteryNo)).toMatchObject({
+      batteryNo, fields: expect.arrayContaining([expect.objectContaining({ fieldName, fieldValue: '72' })]),
+    })
 
     const duplicatePayload = {
       ...detail.data,
@@ -207,10 +207,12 @@
     await page.locator('tbody tr').filter({ hasText: groupName }).getByRole('button', { name: '编辑' }).click()
     await page.getByPlaceholder(`输入${fieldName}`).fill('99')
     await page.getByRole('button', { name: '保存编辑电池组', exact: true }).click()
+    await expect(page).toHaveURL(/\/battery-group$/)
     const afterGroupChange = await apiJson<{ code: number; data: Record<string, any> }>(page, `/system/test/${testId}`)
-    expect(afterGroupChange.data.fieldSnapshots).toEqual(expect.arrayContaining([
-      expect.objectContaining({ fieldName, fieldValue: '72' }),
-    ]))
+    expect(afterGroupChange.code).toBe(200)
+    expect(afterGroupChange.data.batteries.find((battery: Record<string, any>) => battery.batteryNo === batteryNo)).toMatchObject({
+      batteryNo, fields: expect.arrayContaining([expect.objectContaining({ fieldName, fieldValue: '99' })]),
+    })
   })
 
   await test.step('未开始接收的测试可确认删除并在刷新后保持消失', async () => {

--
Gitblit v1.7.1