Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Tfs 如何删除VST中的共享步骤_Tfs_Azure Devops_Tfs Workitem - Fatal编程技术网

Tfs 如何删除VST中的共享步骤

Tfs 如何删除VST中的共享步骤,tfs,azure-devops,tfs-workitem,Tfs,Azure Devops,Tfs Workitem,我试图以编程方式删除共享步骤(我正在尝试导出/导入,并且生成了大量的共享步骤,希望能够删除它们–而不是手动删除,一次一个) 与所有“隐藏”类别工作项类型一样,无法使用“删除工作项”API删除共享步骤。测试用例、测试计划和测试套件都有允许删除它们的特殊API,但我找不到用于共享步骤的类似API 是否有人知道API是什么,或者是否有API,或者是否会有API?是的,共享步骤实际上是一种隐藏的工作项类型 与测试计划/套件不同,没有相关的RESTAPI可以直接删除它们。希望通过web门户手动删除。它只能

我试图以编程方式删除共享步骤(我正在尝试导出/导入,并且生成了大量的共享步骤,希望能够删除它们–而不是手动删除,一次一个)

与所有“隐藏”类别工作项类型一样,无法使用“删除工作项”API删除共享步骤。测试用例、测试计划和测试套件都有允许删除它们的特殊API,但我找不到用于共享步骤的类似API


是否有人知道API是什么,或者是否有API,或者是否会有API?

是的,共享步骤实际上是一种隐藏的工作项类型

与测试计划/套件不同,没有相关的RESTAPI可以直接删除它们。希望通过web门户手动删除。它只能通过使用命令销毁,这是目前唯一可用的选项

也适用于VST,您只需安装VS的任何版本,该命令位于(%programfiles(x86)%\Microsoft Visual Studio 1x.0\Common7\IDE)

要运行witadmin命令行工具,请打开命令提示符窗口 安装Visual Studio的位置。witadmin命令行工具 与任何版本的Visual Studio一起安装

您可以访问此工具 通过安装Visual Studio社区的免费版本

您需要知道要删除的共享步骤工作项的ID

witadmin destroywi /collection:https://xxx.visualstudio.com /id:123

是的,共享步骤实际上是一种工作项类型

与测试计划/套件不同,没有相关的RESTAPI可以直接删除它们。希望通过web门户手动删除。它只能通过使用命令销毁,这是目前唯一可用的选项

也适用于VST,您只需安装VS的任何版本,该命令位于(%programfiles(x86)%\Microsoft Visual Studio 1x.0\Common7\IDE)

要运行witadmin命令行工具,请打开命令提示符窗口 安装Visual Studio的位置。witadmin命令行工具 与任何版本的Visual Studio一起安装

您可以访问此工具 通过安装Visual Studio社区的免费版本

您需要知道要删除的共享步骤工作项的ID

witadmin destroywi /collection:https://xxx.visualstudio.com /id:123

现在可以通过REST API执行以下操作:


$token = [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes(":$($personalToken)"))
$header = @{authorization = "Basic $token"}

$sharedStepIdFileContent = Get-Content -Path .\SharedStepsIdList.txt
$sharedStepIdList = $sharedStepIdFileContent.Split([System.Environment]::NewLine, [System.StringSplitOptions]::RemoveEmptyEntries)
$sharedStepIdList | % {
    $sharedStepId = $_
    $url = "https://dev.azure.com/{org}/{project}/_apis/test/sharedstep/$($sharedStepId)?api-version=5.0-preview.1"
    
    Write-Host "Deleting Shared Step $sharedStepId ..." 
    Invoke-RestMethod -Uri $url -Method Delete -ContentType application/json -Headers $header   
}


现在可以通过REST API执行以下操作:


$token = [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes(":$($personalToken)"))
$header = @{authorization = "Basic $token"}

$sharedStepIdFileContent = Get-Content -Path .\SharedStepsIdList.txt
$sharedStepIdList = $sharedStepIdFileContent.Split([System.Environment]::NewLine, [System.StringSplitOptions]::RemoveEmptyEntries)
$sharedStepIdList | % {
    $sharedStepId = $_
    $url = "https://dev.azure.com/{org}/{project}/_apis/test/sharedstep/$($sharedStepId)?api-version=5.0-preview.1"
    
    Write-Host "Deleting Shared Step $sharedStepId ..." 
    Invoke-RestMethod -Uri $url -Method Delete -ContentType application/json -Headers $header   
}


这有帮助!我昨天确实试过了,但对我不起作用。我意识到我错过了出现的凭证提示窗口。如果有人发现自己处于同样的困境,你不会得到提示你的凭据!这有帮助!我昨天确实试过了,但对我不起作用。我意识到我错过了出现的凭证提示窗口。如果有人发现自己处于同样的困境,你不会得到提示你的凭据!