Parasoft中文网站 > 使用技巧 > Parasoft dotTEST怎么接入流水线 Parasoft dotTEST在CI里怎么跑

Parasoft dotTEST怎么接入流水线 Parasoft dotTEST在CI里怎么跑

发布时间:2026-03-31 09: 23: 00

把Parasoft dotTEST接进流水线时,关键不是先选哪家CI平台,而是先把运行入口、测试配置和结果出口这三件事定住。Parasoft官方已经给出比较清晰的接入路径,Azure DevOps可以直接用官方扩展里的Run dotTEST任务,GitHub可以用官方Run Parasoft dotTEST Action,而更通用的Jenkins、GitLab一类流程,本质上还是调用dottestcli去跑指定配置,再把SARIF、XML、HTML或DTP结果接回流水线。

一、Parasoft dotTEST怎么接入流水线

做接入时,不要先急着堆命令,更稳的做法是先把平台入口、执行机器和配置来源理顺。只要这三层定下来,后面换Jenkins、Azure DevOps还是GitHub,真正变化的通常只是包装方式,不是dotTEST的分析逻辑。

1、先选平台接入方式

如果你用Azure DevOps,可以直接接官方扩展里的Run dotTEST任务;如果你用GitHub,可以接官方run dottest action;如果你用Jenkins、GitLab或自建流水线,就直接在构建节点上调用dottestcli。官方资料已经把这三类路径区分得很清楚。

2、先把运行节点准备好

GitHub官方action文档明确要求dotTEST具备有效许可证,并建议优先使用self hosted runner;示例还默认dottestcli.exe已经在PATH里。换句话说,流水线节点上至少要先把dotTEST本体、许可证和可执行路径准备好,再谈后面的分析步骤。

3、把分析配置固定成可复用入口

dottestcli支持通过-config直接调用builtin、user、dtp或本地properties配置文件,也支持用-listconfigs先列出现有配置。实际接流水线时,最稳的做法不是每次在命令里临时拼规则,而是先定一套固定配置,再让流水线只负责调用。

4、把结果出口先想清楚

Azure DevOps扩展和GitHub Action都强调,dotTEST默认可以产出SARIF、XML、HTML这些结果,再分别上传到平台的扫描视图或制品区。所以接流水线时,不要只让它“跑完”,还要先决定结果是回代码扫描页、回制品下载,还是继续发布到DTP。

二、Parasoft dotTEST在CI里怎么跑

真正到CI里执行时,顺序不要乱。更稳的做法是先恢复依赖和解决方案环境,再调用dottestcli跑静态分析或测试配置,最后统一收结果。这样失败点更容易定位,后面追构建日志也更清楚。

1、先对准解决方案再跑配置

官方命令示例已经给出基本形态,也就是dottestcli.exe配合-solution、-config和-report去执行分析。落到CI里时,通常就是让流水线在源码检出和构建环境准备完之后,直接对解决方案执行一套固定配置。

2、只做静态分析时先跑规则配置

如果当前流水线目标只是代码质量扫描,不需要覆盖率,就直接跑内置规则配置或团队自定义配置,例如builtin配置、user配置或DTP托管配置。这样步骤最短,也最适合先把流水线分析链路跑通。

3、要采单元测试覆盖时换成覆盖配置

如果你不只是要规则检查,还要在CI里把测试和覆盖一起带出来,官方文档给出的built in配置是Run VSTest Tests with Coverage。也就是说,覆盖率不是单独临时拼出来的,而是可以直接通过内置测试配置执行。

4、要做应用覆盖时先分静态覆盖和运行期覆盖

对Web应用这一类场景,官方流程是先用Collect Static Coverage生成static coverage,再把覆盖代理挂到IIS上收运行期数据,最后再用dotTEST把static coverage和runtime coverage合并,并通过-publish送到DTP。这个流程明显比普通静态分析长,所以在CI里应当作为单独链路处理,不要和基础扫描混成一步。

5、要回传DTP就把构建标识一起带上

Parasoft文档说明,build.id、session.tag和report.coverage.images会影响DTP如何聚合、关联和显示报告与覆盖率结果。也就是说,CI里如果要长期看同一项目的历史趋势,就不能只上传文件,还要把这些标识一起固定下来。

三、Parasoft dotTEST结果与覆盖怎么收口

流水线能跑起来只是第一步,后面真正好不好用,取决于结果有没有被收好。把扫描结果、覆盖率结果和构建标识一起收口,后面查问题、看趋势、做门禁才不会散。

1、代码扫描结果优先走SARIF

GitHub Action和Azure DevOps扩展都明确把SARIF作为平台侧展示入口,前者上传后可作为GitHub code scanning alerts展示,后者上传后可在Azure Pipelines的Scans里查看。所以想让开发直接在平台里看问题,SARIF应该优先保留。

2、明细报告用XML和HTML留制品

官方两套集成都说明,除了SARIF,还会生成XML、HTML等报告,并建议作为workflow artifacts或pipeline artifacts上传。这类报告更适合给质量人员、审计留档或构建失败后下载复核。

3、覆盖和测试结果要按同一构建号归并

Parasoft文档明确指出,coverage.xml和report.xml只有在build ID对得上的情况下,DTP才能正确关联覆盖和测试结果。所以做CI时,测试、覆盖和发布链路不要各自乱生成标识,最好统一由同一轮构建号驱动。

4、先把基础扫描跑顺再叠加覆盖和发布

更稳的接入顺序,是先把dottestcli基础扫描跑顺,再补SARIF上传和制品归档,最后才接应用覆盖和DTP发布。因为官方资料里可以看出,基础扫描、覆盖采集、平台展示和DTP汇聚本来就是分层设计的,按层接入更不容易把流水线一次搞复杂。

总结

Parasoft dotTEST怎么接入流水线Parasoft dotTEST在CI里怎么跑,真正实用的思路不是先选平台,而是先把dottestcli配置、执行顺序和结果出口定住。平台侧可以用Azure DevOps扩展或GitHub Action,通用CI则直接调命令行;跑通后再把SARIF、HTML、XML和DTP结果按统一构建标识收口,整条链路才会稳定。

展开阅读全文

标签:Parasoft软件测试代码质量分析

读者也访问过这里:
Parasoft
与世界保持同步创新的测试
立即购买
最新文章
Parasoft C/C++test怎么做MISRA检查 Parasoft C/C++test MISRA误报怎么处理
做MISRA检查时,很多团队卡住的不是规则跑不起来,而是第一次扫描后结果太多,既分不清哪些是真问题,也不知道哪些该作为偏差、哪些该作为误报处理。Parasoft官方资料里把这条链路分得很清楚,C/C++test本身提供内置MISRA测试配置来执行静态分析,DTP和Automotive Compliance Pack则负责把结果映射到MISRA合规视图和报告里;同时,误报处理并不是简单隐藏结果,而是要走抑制、理由记录和后续报表过滤这条正式流程。
2026-03-17
Parasoft报告怎么导出 Parasoft报告字段含义怎么看
Parasoft的报告导出,常见会分成两类,一类是本地分析或流水线生成的正式报告,另一类是DTP里按条件筛出来的结果清单。要把报告真正用起来,不能只知道点哪里导出,还要知道哪些字段是规则口径,哪些字段是处置口径,哪些字段只是筛选条件,否则同一份报告在不同人手里会得出不同结论。
2026-03-17
Parasoft DTP怎么部署 Parasoft DTP服务起不来怎么排查
Parasoft DTP部署这件事,最容易出问题的不是安装包本身,而是数据库、端口、许可和服务启动顺序没有对齐。尤其从DTP 2022.2开始,产品不再自带嵌入式数据库,部署前如果还按旧口径准备环境,后面很容易在首次启动和数据库连接这两步卡住。
2026-03-17
Parasoft Virtualize怎么做服务虚拟化 Parasoft Virtualize虚拟服务怎么录制
Parasoft Virtualize做服务虚拟化,核心不是先去拼响应报文,而是先确定你要走哪条建模路径。官方现在给出的主路径有两类,一类是从OpenAPI、RAML、WSDL这类服务描述直接生成虚拟资产,另一类是先用Parasoft代理录制真实流量,再从录制结果生成虚拟资产和Message Responder。前者适合接口定义比较完整的场景,后者更适合真实流量已经存在、但文档不完整或行为较复杂的场景。
2026-03-17
Parasoft SOAtest怎么做接口测试 Parasoft SOAtest断言怎么写
用Parasoft SOAtest做接口测试,最稳的方式不是先录一堆请求再慢慢改,而是先确定测试来源,再决定是从服务定义自动生成、从录制流量生成,还是手工创建REST客户端。官方资料说明,SOAtest既支持从WSDL与OpenAPI这类服务定义创建测试,也支持手工创建REST Client,还支持基于录制到的API流量生成测试资产,并把这些测试继续复用到持续测试流程里。
2026-03-17
Parasoft dotTEST怎么接入流水线 Parasoft dotTEST在CI里怎么跑
把Parasoft dotTEST接进流水线时,关键不是先选哪家CI平台,而是先把运行入口、测试配置和结果出口这三件事定住。Parasoft官方已经给出比较清晰的接入路径,Azure DevOps可以直接用官方扩展里的Run dotTEST任务,GitHub可以用官方Run Parasoft dotTEST Action,而更通用的Jenkins、GitLab一类流程,本质上还是调用dottestcli去跑指定配置,再把SARIF、XML、HTML或DTP结果接回流水线。
2026-03-17

咨询热线 15601718224