Каков хороший способ отладки модульных тестов, написанных с несколькими атрибутами [Row]? - PullRequest
0 голосов
/ 11 декабря 2008

Когда я запускаю следующий тест в Icarus Gallio, он проходит, но когда я вхожу в него с помощью TestDriven.NET (Test With-> Debugger), он завершается неудачей, поскольку параметры не установлены в соответствии с атрибутами Row.

Я ожидал, что метод будет вызван один раз для каждого примененного атрибута строки.

Что я делаю не так? Если ничего, то что мне нужно сделать для отладки этих тестов, когда они ломаются? Стоит ли избегать параметризованных тестов, если они не подлежат отладке?

[TestFixture]
public class TestDrivenIgnoresMbUnitAttributesWhenDebugging
{
    [Test]
    [Row(1)]
    [Row(2)]
    public void SomeFunc(int x)
    {
        Assert.AreNotEqual(default(int), x);
    }
}

1 Ответ

2 голосов
/ 11 декабря 2008

Хм ... вы устанавливали TestDriven.Net ДО установки Gallio?

Если нет, то расширения Gallio для TestDriven.Net не будут установлены. В этом случае TestDriven.Net может запустить тест в режиме «ad-hoc» со значениями по умолчанию для его параметров.

Должно быть красиво сказать, так ли это. Если расширения Gallio для TestDriven.Net установлены, вы увидите баннерное сообщение «Gallio» в окне вывода во время выполнения теста. Если нет, вы можете увидеть что-то вроде «ad-hoc».

Чтобы устранить проблему, переустановите Gallio. Кроме того, вы можете использовать компонент «Установка и удаление компонентов» программы установки Gallio, а затем убедиться, что компоненты TestDriven.Net выбраны для установки (в разделе «Тестовые центры»).

...