MSTest - Скрыть некоторые модульные тесты с сервера сборки

Поскольку Ответ. Перенаправление инициируется на сервере, Вы не можете сделать этого с помощью этого.

, Если можно записать непосредственно в Ответный поток, что Вы могли бы попробовать что-то как:

response.write("<script>");
response.write("window.open('page.html','_blank')");
response.write("</script>");
25
задан Adam Rackis 19 May 2011 в 14:47
поделиться

6 ответов

Вы можете пометить тесты категорией, а затем запустить тесты на основе категории.

[TestCategory("RequiresLoginCredentials")]
public void TestMethod() { ... }

Когда вы запускаете mstest, вы можете указать /category:"!RequiresLoginCredentials"

34
ответ дан 28 November 2019 в 21:03
поделиться

Существует IgnoreAttribute . В посте также перечислены другие подходы.

3
ответ дан 28 November 2019 в 21:03
поделиться

Другие ответы старые.

В современной визуальной студии (2012 и выше) тесты выполняются с vstest , а не с mstest.

Новый параметр командной строки - /TestCaseFilter:"TestCategory!=Nightly", как объяснено в этой статье.

3
ответ дан 28 November 2019 в 21:03
поделиться

Я выяснил, как фильтровать тесты по категориям в определении сборки VS 2012. Я не мог найти эту информацию где-либо еще.

в поле «Фильтр тестовых случаев» в разделе «Источник теста», в разделе «Автоматические тесты», в разделе «Параметры процесса сборки» на вкладке «Процесс» необходимо написать TestCategory = MyTestCategory (нигде нет кавычек)

Затем в источнике теста файл, который вам нужно добавить атрибут TestCategory. Я видел несколько способов сделать это, но для меня работает добавление его в том же атрибуте, что и в TestMethod, как показано ниже.

[TestCategory ("MyTestCategory"), TestMethod ()]

Здесь вам нужны кавычки

1
ответ дан 28 November 2019 в 21:03
поделиться

Откройте Тест-> Windows-> Редактор списка тестов.

Там вы можете включить / скрыть тесты

2
ответ дан 28 November 2019 в 21:03
поделиться

Мой предпочтительный способ сделать это - иметь в своем решении 2 вида тестовых проектов: один для модульных тестов, которые могут выполняться из любого контекста и которые всегда должны проходить, а другой - с интеграционными тестами, для работы которых требуется определенный контекст. (учетные данные пользователя, база данных, веб-сервисы и т. д.). Мои тестовые проекты используют соглашение об именах (например: businessLogic.UnitTests против businessLogic.IntegrationTests), и я настраиваю свой сервер сборки для запуска только модульных тестов (* .UnitTests). Таким образом, мне не нужно комментировать IgnoreAttributes, если я хочу запустить интеграционные тесты, и я нашел это проще, чем редактировать список тестов.

1
ответ дан 28 November 2019 в 21:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: