如何通过Polarion API使用查询(“ queryWorkItems”,“ queryWorkItemsBySQL”等)

时间:2020-06-29 09:35:31

标签: polarion

我正在使用SOAP API与Polarion服务器通信。在一个WSDL文件中,定义了一些Web服务来查询工作项,但是我找不到如何使用它们的单个示例。 假设我要向服务器询问项目“我的第一个项目”中所有“测试用例”类型的工作项。 我应该将哪些参数值传递给'queryWorkItems'或'queryWorkItemsBySQL'?

我找到了以下有关请求结构的文档: https://almdemo.polarion.com/polarion/sdk/doc/javadoc/com/polarion/alm/ws/client/tracker/TrackerWebService.html#queryWorkItems(java.lang.String,java.lang.String,java.lang.String%5B%5D) https://almdemo.polarion.com/polarion/sdk/doc/javadoc/com/polarion/alm/ws/client/tracker/TrackerWebService.html#queryWorkItemsBySQL(java.lang.String,java.lang.String%5B%5D)

不幸的是,我不知道'query'或'sqlQuery'应该是什么样。您能提供任何示例吗?

1 个答案:

答案 0 :(得分:0)

我发现了如何使用Lucene查询构建和发送API请求。在此视频中,显示了如何构建(从0:40开始在视频中)和将其转换为文本格式(从2:52开始在视频中): https://www.youtube.com/watch?v=DSRKfdr2aJc

一旦您以Lucene格式构建txt查询,就发送API Web服务请求:

queryWorkItems(query, sort, fields)

示例(Python语法):

queryWorkItems(query="project.id:MyProject AND type:testcase", sort="uri", fields=["id", "assignee"])

[工作项字段]-> [字段类型]的字典:

FIELDS = {
        "approvals": "ArrayOfApproval",
        "assignee": "ArrayOfUser",
        "attachments": "ArrayOfAttachment",
        "author": "User",
        "categories": "ArrayOfCategory",
        "comments": "ArrayOfComment",
        "created": "dateTime",
        "description": "Text",
        "dueDate": "date",
        "externallyLinkedWorkItems": "ArrayOfExternallyLinkedWorkItem",
        "hyperlinks": "ArrayOfHyperlink",
        "id": "string",
        "initialEstimate": "duration",
        "linkedOslcResources": "ArrayOfLinkedOslcResource",
        "linkedRevisions": "ArrayOfRevision",
        "linkedRevisionsDerived": "ArrayOfRevision",
        "linkedWorkItems": "ArrayOfLinkedWorkItem",
        "linkedWorkItemsDerived": "ArrayOfLinkedWorkItem",
        "location": "Location",
        "moduleURI": "SubterraURI",
        "outlineNumber": "string",
        "plannedEnd": "dateTime",
        "plannedIn": "ArrayOfPlan",
        "plannedStart": "dateTime",
        "planningConstraints": "ArrayOfPlanningConstraint",
        "previousStatus": "EnumOptionId",
        "priority": "PriorityOptionId",
        "project": "Project",
        "remainingEstimate": "duration",
        "resolution": "EnumOptionId",
        "resolvedOn": "dateTime",
        "severity": "EnumOptionId",
        "status": "EnumOptionId",
        "timePoint": "TimePoint",
        "timeSpent": "duration",
        "title": "string",
        "type": "EnumOptionId",
        "updated": "dateTime",
        "workRecords": "ArrayOfWorkRecord",
        "customFields": "ArrayOfCustom",
        "uri": "SubterraURI",
        "unresolvable": "boolean",
    }