Версия: OneUnit 0.5.1.
&Изолированный на &Тест дает каждому тесту свежую поделку. На &ПараметризованныйТест свежую поделку получает тест целиком, а его случаи выполняются в ней друг за другом, и второй случай видит состояние, оставленное первым.
Воспроизведение. tests/Классы/Счетчик.os, желудь-одиночка со счетчиком:
Перем Значение;
&Желудь
Процедура ПриСозданииОбъекта()
Значение = 0;
КонецПроцедуры
Функция Увеличить() Экспорт
Значение = Значение + 1;
Возврат Значение;
КонецФункции
tests/ИзоляцияТестовТест.os:
#Использовать asserts
#Использовать "."
&Пластилин
Перем Поделка;
&Тест
&Изолированный
Процедура ПервыйТестВыполняетсяВСвежейПоделке() Экспорт
Ожидаем.Что(Поделка.НайтиЖелудь("Счетчик").Увеличить()).Равно(1);
КонецПроцедуры
&Тест
&Изолированный
Процедура ВторойТестВыполняетсяВСвежейПоделке() Экспорт
Ожидаем.Что(Поделка.НайтиЖелудь("Счетчик").Увеличить()).Равно(1);
КонецПроцедуры
&ПараметризованныйТест
&Изолированный
&ИсточникЗначение(1)
&ИсточникЗначение(2)
Процедура КаждыйСлучайВыполняетсяВСвежейПоделке(НомерСлучая) Экспорт
Ожидаем.Что(Поделка.НайтиЖелудь("Счетчик").Увеличить()).Равно(1);
КонецПроцедуры
├─ ИзоляцияТестовТест (./tests/ИзоляцияТестовТест.os)
│ ├─ ПервыйТестВыполняетсяВСвежейПоделке ✔
│ ├─ ВторойТестВыполняетсяВСвежейПоделке ✔
│ └─ КаждыйСлучайВыполняетсяВСвежейПоделке
│ ├─ [1] ✔
│ └─ [2] ✘ [Ожидали, что проверяемое значение (2) РАВНО (1).]
По описанию аннотации («на тесте - каждый такой тест своим») ожидалось, что случаи параметризованного теста изолируются так же, как отдельные тесты. Если общая поделка на все случаи задумана, это стоит описать в документации &Изолированный: сейчас случаи приходится развязывать вручную, например разными данными в каждом случае.
Версия: OneUnit 0.5.1.
&Изолированныйна&Тестдает каждому тесту свежую поделку. На&ПараметризованныйТестсвежую поделку получает тест целиком, а его случаи выполняются в ней друг за другом, и второй случай видит состояние, оставленное первым.Воспроизведение.
tests/Классы/Счетчик.os, желудь-одиночка со счетчиком:tests/ИзоляцияТестовТест.os:По описанию аннотации («на тесте - каждый такой тест своим») ожидалось, что случаи параметризованного теста изолируются так же, как отдельные тесты. Если общая поделка на все случаи задумана, это стоит описать в документации
&Изолированный: сейчас случаи приходится развязывать вручную, например разными данными в каждом случае.