我正在使用Azure DevOps的官方Python REST
API:https :
//github.com/Microsoft/azure-devops-python-
api
多亏了这些示例,我才能够从id检索有关测试用例的信息。
如何通过查询(WIQL)做到这一点?
到目前为止,这是我的代码(带有经过修改的标记和链接):
from vsts.vss_connection import VssConnection
from msrest.authentication import BasicAuthentication
token = "hcykwckuhe6vbnigsjs7r3ai2jefsdlkfjslkfj5mxizbtfu6k53j4ia"
team_instance = "https://tfstest.toto.com:8443/tfs/Development/"
credentials = BasicAuthentication("", token)
connection = VssConnection(base_url=team_instance, creds=credentials)
def print_work_items(work_items):
for work_item in work_items:
print(
"{0} {1}: {2}".format(
work_item.fields["System.WorkItemType"],
work_item.id,
work_item.fields["System.Title"],
)
)
WIT_CLIENT = (
"vsts.work_item_tracking.v4_1.work_item_tracking_client.WorkItemTrackingClient"
)
wit_client = connection.get_client(WIT_CLIENT)
def get_TC_by_id(desired_ids):
work_items = wit_client.get_work_items(ids=desired_ids, error_policy="omit")
print_work_items(work_items)
def get_TC_from_query(query):
# THIS FUNCTION IS NOT WORKING...
work_items = wit_client.get_work_items(query=query, error_policy="omit")
print_work_items(work_items)
get_TC_by_id([1035375])
get_TC_from_query(
"""\
SELECT
[System.Id],
[System.WorkItemType],
[System.Title],
[System.State],
[System.AreaPath],
[System.IterationPath]
FROM workitems
WHERE
[System.TeamProject] = @project
AND [System.WorkItemType] = 'Test Case'
ORDER BY [System.ChangedDate] DESC
"""
)
这是我得到的错误
File "test_TFS.py", line 35, in get_TC_from_query
work_items = wit_client.get_work_items(query=query, error_policy="omit")
TypeError: get_work_items() got an unexpected keyword argument 'query'
如何从查询中检索测试用例?
特别是,我不了解“客户”的价值,例如
"vsts.work_item_tracking.v4_1.work_item_tracking_client.WorkItemTrackingClient"
谢谢你们!
在VSTS示例的Github存储库中发布了一条消息(即导致请求请求的问题)之后,我得到了解决问题的提示。
解决方案是使用:
Wiql
类的wiql查询对象query_by_wiql
功能get_work_item
功能的WorkItem (或get_work_items
通过一次处理处理多个WorkItem)这是我对这个问题的解决方案:
[针对版本5.1和azure-devops模块进行了更新,以取代VSTS]
from azure.devops.connection import Connection
from msrest.authentication import BasicAuthentication
from azure.devops.v5_1.work_item_tracking.models import Wiql
token = "hcykwckuhe6vbnigsjs7r3ai2jefsdlkfjslkfj5mxizbtfu6k53j4ia"
team_instance = "https://tfstest.toto.com:8443/tfs/Development/"
credentials = BasicAuthentication("", token)
connection = Connection(base_url=team_instance, creds=credentials)
def print_work_items(work_items):
for work_item in work_items:
print(
"{0} {1}: {2}".format(
work_item.fields["System.WorkItemType"],
work_item.id,
work_item.fields["System.Title"],
)
)
wit_client = connection.clients.get_work_item_tracking_client()
def get_TC_from_query(query):
query_wiql = Wiql(query=query)
results = wit_client.query_by_wiql(query_wiql).work_items
# WIQL query gives a WorkItemReference => we get the corresponding WorkItem from id
work_items = (wit_client.get_work_item(int(result.id)) for result in results)
print_work_items(work_items)
问题内容: 我的桌子上有时间戳,我只想从中提取一个小时。我搜索并找到了提取功能,但无法用作查询。我需要先在varchar中转换时间戳,然后从中提取小时吗?这是我的查询: 实际查询: 问题答案: 以下应该工作
问题内容: 我有一个包含两列的表:price(int)和price_display(varchar)。 price是实际的数字价格,例如“ 9990” price_display是视觉表示,例如“ $ 9.99”或“ 9.99Fr” 我已经能够通过regexp确认两列是否匹配: price_display不是regexp格式(price / 1000,2) 但是在不匹配的情况下,我想从price_
大家好, 我有3个测试文件,如上面的截图所示。我想从这3个文件导入数据到一个主谷歌表。这是我使用的公式: 当所有的数据都填充在3个源文件中时,它工作得非常好。但是,如果第一个文件()为空,则输出将是主google工作表中单元格中的。请问如何避免这种第一个文件填满数据才出来的情况?我希望公式能够跳过第一个文件,如果它是空的,并继续为第二个和第二个文件。 任何建议都将不胜感激!
我想调用AZDO来获取一个测试计划,但当我尝试时,这返回了一个IOException,我不知道为什么 这是stacktrace 调试[org.apache.http.client.protocol.requestAddCookies]CookieSpec选定:默认调试[org.apache.http.client.protocol.requestAuthCache]Auth缓存未在上下文中设置调试
我想用php中的sqli对我的users表执行select查询。出于安全原因(sql注入),我想使用参数来实现。我还想将结果存储在一个php变量中。 这是我的代码: 变量填写正确。 我得到这个错误: 警告:mysqli::prepare()[mysqli.prepare]:无法在第44行的C:\xampp\htdocs\cammerta\registerer.php中获取mysqli 致命错误:在
我使用Spring Jdbc进行查询。我需要从数据库中执行select,但是我不知道表中有多少列可以从resultset中获得结果(例如,对于< code>RowMapper)。我想获得<代码>列表