Dotnet тест, игнорирующий фильтр в Linux
Я использую xunit с атрибутами trait, установленными в некоторых моих тестах. При запуске дотнет-теста я пытаюсь фильтровать по этим признакам. У меня он отлично работает локально на моей машине с Windows, но когда я запускаю ту же команду на своем контейнере CI, он не фильтрует мои тесты.
Команда:
dotnet test --filter Category=Integration
Я использую CircleCI с контейнером mcr.microsoft.com/dotnet/core/sdk:2.2
Когда я запускаю команду SSH и запускаю команду, она просто запускает все тесты.
dotnet --info
из контейнера:
.NET Core SDK (reflecting any global.json):
Version: 2.1.700
Commit: c2ef055a0f
Runtime Environment:
OS Name: debian
OS Version: 9
OS Platform: Linux
RID: debian.9-x64
Base Path: /usr/share/dotnet/sdk/2.1.700/
Host (useful for support):
Version: 2.1.11
Commit: d6a5616240
.NET Core SDKs installed:
2.1.700 [/usr/share/dotnet/sdk]
.NET Core runtimes installed:
Microsoft.AspNetCore.All 2.1.11 [/usr/share/dotnet/shared/Microsoft.AspNetCore.All]
Microsoft.AspNetCore.App 2.1.11 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.NETCore.App 2.1.11 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
To install additional .NET Core runtimes or SDKs:
https://aka.ms/dotnet-download
1 ответ
Мне удалось решить мою проблему почти. Похоже, это ошибка с 16.1.0
Версия SDK (которая определяет версию vstest). Поскольку проблема была только для CI для меня, я прикрепил контейнер, который я использовал для
mcr.microsoft.com/dotnet/core/sdk@sha256:d0a71e1312be2618f320a7b7cc6d7423af3810542b3ffd35438108800ecfb958
который содержит 16.0.1
SDK. Это не идеальное решение, но решает мою непосредственную проблему.