如何在 klocwork Insights 10.0 中获取指定内部版本号的编号问题,我需要在 bash 脚本中使用它。
问问题
946 次
1 回答
4
Klocwork 有一个WebAPI,您可以使用它从 bash 脚本中查询此类信息,例如使用curl
. 您的 Klocwork 服务器上还提供了 API 文档,地址为 http:// klocwork_server_host:端口/review/api,例如http://localhost:8080/review/api。
查询:
curl --data "action=search&user=my_account&project=my_project&query=build:build_1 status:Analyze state:New,Existing<oken=xxxx" http://localhost:8080/review/api
将返回在名为build_1的项目my_project的构建中发现的所有打开(状态New和Existing)、未引用(状态分析)问题的列表。
有关可在查询字符串中与搜索操作一起使用的关键字列表,请参阅在 Klocwork Review 中搜索。
如果您只想要缺陷数量的摘要而不是获取整个列表,则可以使用报告操作:
curl --data "action=report&user=my_account&project=my_project&build=build_1&x=Category&y=Component&filterQuery=status:Analyze state:New,Existing<oken=xxxx" http://localhost:8080/review/api
它按检查器类别(分类)和组件返回缺陷数量的摘要。示例输出如下:
{"rows":[{"id":1,"name":"C and C++"},{"id":3,"name":"MISRA C"},{"id":4,"name":"MISRA C++"}],"columns":[{"id":5,"name":"System Model"}],"data":[[122],[354],[890]],"warnings":[]}
您可以修改 x 和 y 轴参数以生成不同的问题细分,例如通过 Severity 和 State 代替:
curl --data "action=report&user=my_account&project=my_project&build=build_3&x=Severity&y=State&filterQuery=state:New,Existing,Fixed<oken=xxxx" http://localhost:8080/review/api
输出:
{"rows":[{"id":1,"name":"Critical"},{"id":2,"name":"Error"},{"id":3,"name":"Warning"},{"id":4,"name":"Review"}],"columns":[{"id":-1,"name":"Existing"},{"id":-1,"name":"Fixed"},{"id":-1,"name":"New"}],"data":[[10,5,2],[20,6,1],[45,11,3],[1112,78,23]],"warnings":[]}
WebAPI 食谱文档有一个使用 python 和报告操作以及处理和格式化响应的示例。
已编辑: 修复示例中的拼写错误:“&build:build_id”到“&build=build_id”
于 2015-02-27T20:51:05.357 回答