呼叫tcms-api失败并显示403 Forbidden

时间:2019-11-18 02:43:42

标签: kiwi-tcms

我使用tcms-api调用TestPlan.filter,一切正常,函数返回测试计划。但是调用TestPlan.create失败,并带有xmlrpc.client.ProtocolError:

我已经启用了所有登录帐户的权限,但仍然不知道如何更改服务器配置。

请给我任何提示或建议。谢谢。

[环境] 奇异果版本是6.11。 我在Windows 10上使用python 3.6(32位),并使用winkerberos替换xmlrpc.py中的kerberos。我也将ServerProxy的参数替换为如下所示的自签名证书

JSON.stringify

diff xmlrpc.py

self.server = ServerProxy(
    url,
    verbose=VERBOSE,
    allow_none=1,
    context=ssl._create_unverified_context()
)

下面是测试代码。

$ diff original_xmlrpc.py xmlrpc.py
18,19c18,19
< import kerberos
<
---
> import winkerberos as kerberos
> import ssl
106c106
<             transport=self._transport,
---
>             context=ssl._create_unverified_context(),

以下输出。

#!/usr/bin/env python

import sys
import tcms_api
import datetime
import csv

MANAGER = 'your-username-here'
PRODUCT_ID = 31       # Kiwi TCMS
PRODUCT_VERSION = 721 # 6.1-ee
CATEGORY_ID = 46      # --default--
PRIORITY_ID = 10      # P1

rpc_client = tcms_api.TCMS().exec

NOW = datetime.datetime.now().isoformat().replace('T',' ')[:19]

test_plan = rpc_client.TestPlan.create({
    'name': 'Performance baseline TP at %s' % NOW,
    'text': 'A script is creating this TP and adds TCs and TRs to it to eastablish a performance baseline',
    'type': 7,
    'product': PRIORITY_ID,
    'product_version': PRODUCT_VERSION,
    'is_active': True,
})

1 个答案:

答案 0 :(得分:1)

终于明白了!这是一个错误!

我最近添加了集成测试,可以清楚地表明相同的失败。您可以在https://github.com/kiwitcms/tcms-api/issues/22处监视进度。

很可能有2个错误-一个在API客户端中,一个在服务器端。