# -*- coding: utf-8 -*- """票 06 聚合输入扫描:三套件非✅明细 + defects + 关键 delta 点核查""" import json, io, sys sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8') BASE = r'e:\code\crm-backend-matt\.scratch\customer-e2e-r2' def load(name): with open(BASE + '\\' + name, encoding='utf-8') as f: return json.load(f) for name in ['e2e-core-r2-checks.json', 'e2e-heavy-r2-checks.json', 'e2e-incr-checks.json']: d = load(name) checks = d if isinstance(d, list) else d['checks'] from collections import Counter c = Counter(ch['verdict'] for ch in checks) print('=' * 20, name, '=' * 20) print('verdicts:', dict(c), 'elapsed:', None if isinstance(d, list) else d.get('elapsedSec')) for ch in checks: if ch['verdict'] != '✅': print(f" [{ch['verdict']}] {ch['flow']} · {ch['case']} | {ch['detail']}") if isinstance(d, dict): defs = d.get('defects') or [] print('defects:', json.dumps(defs, ensure_ascii=False)) # 关键 delta 点核查:board pool 行为 + 汇总卡 5 字段 + oplog 值域 core = load('e2e-core-r2-checks.json')['checks'] print('\n===== F-02 board 全部用例 =====') for ch in core: if ch['flow'] == 'F-02': print(f" [{ch['verdict']}] {ch['case']} | {ch['detail']}") print('\n===== F-07 汇总卡/oplog 用例 =====') for ch in core: if ch['flow'] == 'F-07': print(f" [{ch['verdict']}] {ch['case']} | {ch['detail']}") print('\n===== F-12 quick-create/confirmSimilar 用例 =====') for ch in core: if ch['flow'] == 'F-12': print(f" [{ch['verdict']}] {ch['case']} | {ch['detail']}") print('\n===== F-16 查重消费侧用例 =====') for ch in core: if ch['flow'] == 'F-16': print(f" [{ch['verdict']}] {ch['case']} | {ch['detail']}")