我正在使用 Python Toolkit for Rally REST API 来更新我们的 Rally 服务器上的缺陷。我已经确认我能够与服务器取得联系,并通过获取当前缺陷列表进行身份验证。我在更新它们时遇到了问题。我正在使用 Python 2.7.3 和 pyral 0.9.1 并请求 0.13.3。
此外,我将 'verify=False' 传递给 Rally() 调用,并对 restapi 模块进行了适当的更改以弥补这一点。
这是我的测试代码:
import sys
from pyral import Rally, rallySettings
server = "rallydev.server1.com"
user = "user@mycompany.com"
password = "trial"
workspace = "trialWorkspace"
project = "Testing Project"
defectID = "DE192"
rally = Rally(server, user, password, workspace=workspace,
project=project, verify=False)
defect_data = { "FormattedID" : defectID,
"State" : "Closed"
}
try:
defect = rally.update('Defect', defect_data)
except Exception, details:
sys.stderr.write('ERROR: %s \n' % details)
sys.exit(1)
print "Defect %s updated" % defect.FormattedID
当我运行脚本时:
[temp]$ ./updefect.py
ERROR: Unable to update the Defect
如果我更改 RallyRESTResponse 函数中的代码以在找到时打印出 self.errors 的值(rallyresp.py 的第 164 行),我会得到以下输出:
[temp]$ ./updefect.py
[u"Cannot parse input stream due to I/O error as JSON document: Parse error: expected '{' but saw '\uffff' [ chars read = >>>\uffff<<< ]"]
ERROR: Unable to update the Defect
我确实在这里找到了另一个听起来可能与我的问题有关的问题:
App SDK: Erorr parsing input stream when running query
你能提供任何帮助吗?