Как пропустить определенные тесты в xUnit на основе текущей платформы

  • У меня есть сборка, созданная мной на Windows
  • Я хочу запустить тесты xUnit на моно в Linux.

Однако я обнаружил, что, хотя 400 из этих тестов могут выполняться (по порядку), некоторые тесты либо зависают, либо полностью останавливают бегун xUnit.

Я не ] care , если определенные тесты не могут быть запущены в Linux, определенные тесты связаны с DTC и некоторыми неуправляемыми gumph, которые нам там не нужно поддерживать.

Однако я действительно хочу применить игнорирование этих тестов, и тот факт, что тест был проигнорирован, правильно помечен в выводе сборки.

Вопрос можно свести к тому, что я предполагаю ряд возможных решений

  • Как мне запустить определенные тесты в xUnit через консольный бегун? (Я не нашел документации по этому поводу, возможно, я просто недостаточно внимательно ищу)
  • Можно ли пойти другим путем и сказать: «Вот сборка, пожалуйста, игнорируйте эти конкретные тесты»
  • Было предложено иметь атрибут в этих тестах как лучший способ официально задокументировать, что эти тесты зависят от платформы - возможно ли это?

Если бы я мог избежать слишком большого изменения исходного кода, это было бы грандиозно, поскольку код не Мне действительно нечего менять, и применение множества кроссплатформенных хаков, вероятно, не слишком удачно.

33
задан Rob Ashton 12 December 2010 в 11:10
поделиться