NUnit+ReSharper: Как просмотреть результаты для TestFixture с различными параметрами?

Я записал модульные тесты под NUnit, которые используют TestFixtures с различными параметрами. Теперь, когда я запускаю тесты, я хочу видеть, с которым прошелся тест параметров и с которым не имеет. К сожалению, ReSharper показывает только "Проваленному тесту: Дочерний тест перестал работать" и больше никакой информации. Там какой-либо путь состоит в том, чтобы видеть, какие параметры вызвали отказ при испытании?

Спасибо!

23
задан levanovd 17 May 2010 в 09:25
поделиться

4 ответа

Я написал об этом в JetBrains и 9 июля 2010 г. получил следующий ответ от Андрея Серебрянского:

Эта проблема будет решена в следующем выпуске ReSharper.

Я считаю, что на момент написания этой статьи текущая версия - 5.1.


РЕДАКТИРОВАТЬ:

На основе комментариев @Damien McGivern и @ zcrar70

Проблема здесь , и она исправлена ​​во внутренней сборке Resharper.

Однако, по словам Виктора Кроппа (ссылка выше):

Эти изменения НЕ будут включены в 5.1 по техническим причинам.

и когда его спросили, какой будет дата выпуска, был дан ответ (по состоянию на 3 августа 2010 г.):

Извините, наша дорожная карта еще не установлена. Я правда не знаю.

РЕДАКТИРОВАТЬ2:

Дополнительные ответы Виктора Кроппа:

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

А. Ожидается, что ReSharper 6.0 EAP начнется до конца года. Сейчас я не знаю точной даты.

В. Будет ли это исправление ошибки доступно в любом выпуске до 6.0?

A. Нет простите.

РЕДАКТИРОВАТЬ 3:

Я только что протестировал это с помощью Resharper 6 EAP (сборка 2101), и похоже, что они неплохо поработали над исправлением этой проблемы.

Я еще не слишком много играл с этим, но пока мне нравится то, что я вижу.

16
ответ дан 29 November 2019 в 03:00
поделиться

Я предполагаю, что вы говорите о TestCaseAttribute, для теста вроде этого:

[TestCase(true, Description = "When true")]
[TestCase(false, Description = "When false")]
[Test]
public void SomeTest(bool parameter) { . . . }

Я использую свойство Description для этой ситуации. Свойство description подскажет вам, какой тест не прошел. Если вы достаточно хорошо описали ситуацию, она должна быть самодокументируемой.

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

Какую версию ReSharper вы используете?

Обновление:
Я провел небольшое исследование и не думаю, что атрибут TestCase не поддерживается в Resharper 4.X таким образом вы бы хотели, чтобы это было.

Очевидно, это будет поддерживаться в R # 5.X.

Между тем существует подключаемый модуль для ReSharper под названием Gallio , который может помочь.

Получил информацию из вопроса SO здесь -> Средство выполнения модульных тестов ReSharper - TestCase

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

Зависит от того, как происходит сбой. В вашем Assert последний параметр является необязательной строкой, в которую вы можете поместить информацию о сбое. например: Assert.IsTrue(false, "Because I'm silly");

Когда ваш тест провалится, в нем будет ваше сообщение.

Аналогично, вы можете использовать Console.Write для вывода теста. Там также должен быть стек вызовов, описывающий, где тест потерпел неудачу, если вы не поймаете и не отработаете исключение.

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

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