Squish结果管理如果只停留在IDE里看一眼,后面做回归对比、缺陷复盘和CI归档都会很乱。更稳的做法是把导出动作、报告格式和保存路径一次定成统一口径,让本地调试、命令行执行和流水线产物都能对上同一套规则。Squish本身同时支持IDE里的结果导出,也支持通过squishrunner生成多种报告格式,但不同格式对附件、目录和保存方式的要求并不一样。
一、Squish报告怎么导出
这一步的关键不是单纯把结果保存出来,而是先分清你当前是IDE临时分析,还是命令行与CI归档。前者更强调快速分享与回看,后者更强调结构化输出和后续系统集成,所以导出入口与格式选择要分场景处理。
1、在IDE里先从Test Results视图导出结果包
测试执行完成后,到【Test Results】视图查看结果,若你要把当前结果分享给同事或在另一台机器回放查看,直接用视图上的【Export】按钮导出结果包更稳,当前文档说明这里导出的是ZIP格式,适合连同附件一起打包分享。
2、需要命令行落盘时用squishrunner统一导出
如果你是从命令行或CI跑测试,导出动作应放到squishrunner里做,用【--reportgen】明确指定报告生成器,不要依赖默认stdout输出,否则结果只会打印到控制台,不利于后续归档和机器处理。
3、做CI对接优先选junit或xml3.5
如果你要对接Jenkins、GitLab CI或测试平台,优先考虑【junit】或【xml3.5】这类结构化格式。junit会输出单个XML文件,适合CI直接解析;xml3.5会输出目录型结果,能保留更完整的附件、截图和视频信息,更适合长期留档。
4、不要继续把html当主报告格式
Squish文档已明确说明html报告生成器属于旧式方案,维护已停,部分新特性不支持;如果你只是为了人工查看结果,优先考虑xml3系列配合后续工具展示,而不是继续把html当主出口。
5、附件类证据要跟着报告一起导出
如果你的脚本里用了截图、失败图像、对象转储或test.attachFile这类附件,导出时要优先选能保留附件链接的格式。当前文档说明xml3、html和junit都能为附件生成链接,而xml3目录型报告在这方面更完整。
二、Squish报告格式与保存路径怎么统一
格式与路径统一的目标,是让任何一次执行都能快速找到结果,并且不同工具读到的是同一套目录规则。最常见的混乱来源有两个,一是本地有人导出ZIP,有人导出XML,有人只看控制台;二是路径一会儿跟测试套件走,一会儿跟CI工作目录走,最后附件和主报告对不上。
1、先固定一主一辅两种报告格式
团队口径建议只保留两种主格式,本地人工排查用ZIP结果包或xml3目录型结果,CI系统集成用junit单文件XML。这样既保留了附件和失败细节,也兼顾了流水线可解析性,避免同时维护过多格式。
2、目录型报告与文件型报告不要混着随意配
Squish把报告生成器分成目录型和文件型两类,像xml3、json、html属于目录型,junit、xmljunit、stdout文件输出更偏文件型。文档明确说明【--resultdir】只适用于文件型报告,并且会和目录型生成器冲突,所以不要一边用xml3一边再强行指定resultdir。
3、统一保存路径时优先用一层总目录再分执行批次
更稳的做法是先定一个总结果根目录,再按项目名、测试套件名、构建号或日期分子目录。这样xml3这类目录型报告可以直接把结果落在对应批次目录里,junit这类文件型报告也能落到同一批次下,后续定位会快很多。这个规则虽然是团队约定,但正好与Squish目录型报告的输出方式相匹配。
4、附件路径要跟结果目录一并收口
Squish文档说明附件会被复制到报告目录下的对应子目录中,例如测试套件名、测试用例名、attachments或verificationPoints这类路径层级,所以路径统一时不能只统一主XML文件,还要把附件子目录一并纳入归档规则。
5、结果导入与复盘时优先保留ZIP完整包
如果你后续还要在IDE里重新打开结果做失败分析,优先保留ZIP完整结果包。因为当前文档说明导入时支持XML无附件与ZIP带附件两种格式,而且ZIP是更推荐的形式,适合跨机器复盘。
三、Squish报告归档与复核怎么固化
把报告导出来只是第一步,真正省时间的是让每次执行后的结果都能按同一口径归档和复核。这样你后面看趋势、找回归、查失败附件时,才不会反复问结果到底存在哪里、该看哪个文件。
1、每次执行都带上固定命名信息
建议在结果目录或文件名里固定带上测试套件名、执行日期、构建号和执行环境,尤其是CI场景下,不要只生成一个results.xml然后反复覆盖,否则历史对比会很难做。
2、把报告生成方式写进套件执行规范
明确规定哪些场景必须用IDE导出ZIP,哪些场景必须用squishrunner加【--reportgen junit】或【--reportgen xml3.5】,并把命令口径写进项目文档,避免团队成员各自保存一套格式。
3、失败分析优先保留带附件的结果
如果结果里包含失败截图、视频、对象快照或附加文件,复盘时一定优先看带附件的目录型结果或ZIP结果,不要只保留一个junit文件,因为junit更适合集成,不适合完整取证。
4、定期抽查结果目录是否仍符合统一规则
项目跑久了以后,最容易出现新的脚本或新的流水线节点偷偷把结果输出到别处。建议每隔一段时间抽查一次结果目录结构、文件命名和附件路径,确认没有偏离统一口径。
5、把旧格式逐步清理掉
如果团队里还在并行使用xmljunit、html或只看stdout,建议逐步收敛到junit加xml3.5这一主辅组合。文档已经说明xmljunit较旧且不保留较新的测试结构信息,html也已不再维护,继续混用只会增加维护成本。
总结
Squish报告怎么导出,关键是先区分IDE分享与命令行归档,再用【Export】或squishrunner的【--reportgen】走统一出口。Squish报告格式与保存路径怎么统一,核心是固定主格式、收口附件目录、避免目录型和文件型参数混配,并把结果根目录和命名规则长期固化。只要这三件事定下来,后续做失败复盘、CI接入和结果归档都会顺很多。