ReSharper 测试运行程序忽略 `.runsettings` 文件,但 Visual Studio 测试运行程序可以工作

问题描述 投票:0回答:1

我面临一个问题,当我通过

ReSharper
测试运行程序运行测试时,.runsettings 文件不会影响测试的执行。但是,当我使用 Visual Studio 的内置测试运行器运行测试时,
.runsettings
文件中的设置会正确应用。

这是我的

.runsettings
文件:

<?xml version="1.0" encoding="utf-8"?>
<RunSettings>
  <RunConfiguration>
    <TestCaseFilter>TestCategory != MyCategory</TestCaseFilter> 
  </RunConfiguration>
</RunSettings>

使用 Visual Studio 测试运行程序时,

TestCaseFilter
按预期应用,并且类别为
MyCategory
的测试将从测试运行中排除。但是,当通过 ReSharper 的测试运行器运行相同的测试时,过滤器将被忽略,并且所有测试都会被执行。

相关设置:

  • ReSharper 设置:

    ReSharper Options

    ➡️ 我尝试了这两个选项(使用在 VS UI 中选择的

    .runsettings
    并使用特定的测试设置文件)

  • Visual Studio 设置:

    VS Test Configure Run Settings

环境详情:

  • 目标框架:.NET 8
  • 测试框架:MSTest
  • Visual Studio 版本:17.11.4
  • ReSharper版本:2024.2.5

我尝试使用

.runsettings
配置
TestCaseFilter
文件以排除类别为
MyCategory
的测试。我期望 ReSharper 的测试运行程序应用此过滤器并从运行中排除这些测试,就像 Visual Studio 的测试运行程序一样。然而,ReSharper的测试运行程序忽略了
.runsettings
文件,并且执行了所有测试,包括
MyCategory
中的测试。

visual-studio unit-testing resharper mstest runsettings
1个回答
0
投票

遗憾的是,R# 尚不支持通过 runsettings 指定 TestCaseFilter。有一个关于此问题的公开报告:RSRP-498774

TestCaseFilter
in
.runsettings
被忽略
,请对该问题投票。

© www.soinside.com 2019 - 2024. All rights reserved.