Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.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
Azure devops azure devops管道测试通过报告使用了错误的数学_Azure Devops - Fatal编程技术网

Azure devops azure devops管道测试通过报告使用了错误的数学

Azure devops azure devops管道测试通过报告使用了错误的数学,azure-devops,Azure Devops,我有一个Azure DevOps管道,其中40%的测试处于非活动状态。报告显示了60%的通过率,而在我看来,它应该显示100%,因为通常通过率是针对执行的测试定义的,而不是针对编写的测试 我搜索了Microsoft文档,其中唯一的答案是检查stackoverflow,而我没有看到报告此问题 有人能告诉我如何从报告中过滤非活动测试吗?谢谢 在我看来,报告显示了60%的通过率 100%,因为通常根据执行的测试定义通过率 而不是编写测试的宇宙 场景: 我有五种测试方法,其中3种成功,1种失败,第五种测

我有一个Azure DevOps管道,其中40%的测试处于非活动状态。报告显示了60%的通过率,而在我看来,它应该显示100%,因为通常通过率是针对执行的测试定义的,而不是针对编写的测试

我搜索了Microsoft文档,其中唯一的答案是检查stackoverflow,而我没有看到报告此问题

有人能告诉我如何从报告中过滤非活动测试吗?谢谢

在我看来,报告显示了60%的通过率 100%,因为通常根据执行的测试定义通过率 而不是编写测试的宇宙

场景:

我有五种测试方法,其中3种成功,1种失败,第五种测试方法标有
Ignore
属性

复制同一问题:

对于VSTest任务的测试报告,忽略的测试将标记为
other
。总测试是
通过+失败+其他
的总结,而不是
通过+失败
,因此您得到的是60%,而不是100%

这里是关于类似的问题,因为我知道团队已经添加了关于是否在汇总计算中使用忽略的测试的进一步调查。你可以在那里发表评论,要求更新

有人能告诉我怎样才能过滤掉不活跃的测试吗 报告的内容?谢谢

我的工作方法是使用
TestCategory
而不是
Ignore
属性。从
Ignore
更改为
TestCategory

发件人:

致:

配置VSTest测试过滤器,添加过滤器
TestCategory=TestsToBeIgnored


因此,总测试不包括我需要忽略的测试,并且百分比可以是准确的。(测试过滤器选项适用于Azure Devops管道、本地vstest命令行和VS测试管理器)

谢谢你@Lance Li——它似乎起到了作用。我会尝试并报告。@Krazyk4tlay请随时让我知道我的答案是否有用:)您的解决方案是一种解决Microsoft对合格率的严格(且不正确)解释的方法。所以它起作用了,是的。我也有机会在他们的网站上回复,并要求他们让报告可定制,如果他们非常在乎他们对PASS RATE的定义,如果你不能从封闭的票得到快速响应,可以自由地创建一个新的特征请求,团队会考虑当他们看到它。没有得到你的最新信息。我的变通方法对你有用吗?如果您对此有任何疑问,请随时通知我。对不起,我没有时间返回stackoverflow进行报告。再次感谢您为我详细介绍解决方案
[Ignore]
[TestMethod]
public void TestMethod5()
{
    bool value = true;
    if (value.Equals(true))
    {
        Console.WriteLine("True");
    }
}
[TestCategory("TestsToBeIgnored")]
[TestMethod]
public void TestMethod5()
{
    bool value = true;
    if (value.Equals(true))
    {
        Console.WriteLine("True");
    }
}