Содержание
- 2. Будет ли тест понятен ревьюеру? Можно ли быстро убедиться в корректности теста? Можно ли быстро понять,
- 3. [TestFixture] public class Superman_Should { [Test] public void SaveKittenFromTree() { … superman.Act(); Assert.That(kitten.IsSaved()); } [Test] public
- 4. [TestFixture] public class Superman_Should { [Test] public void SaveKittenFromTree() {…} [Test] public void WearRedBlueSuit_WhenAtWork() {…} }
- 5. System Under Test имя класса, имя метода Условия вход, состояние Результат ожидаемое поведение или требования для
- 6. ParserTests.TestParse ParserTests.Parse_Fails ParserTests.Parse_BigNumbers ParserTests.Parse_NumbersGreaterThanMaxInt ParserTests.Fails_OnNegativeNumbers ИМЯ ТЕСТА КАК СПЕЦИФИКАЦИЯ
- 7. IsAdult_AgeLessThan18_False ParseInt_Should.Fails_OnNonNumber Stack_Should.BeEmpty_AfterCreation When_MandatoryFieldsAreMissing_Expect_StudentAdmissionToFail ИМЯ ТЕСТА КАК СПЕЦИФИКАЦИЯ
- 8. ИМЯ ТЕСТА КАК СПЕЦИФИКАЦИЯ
- 9. ИМЯ ТЕСТА КАК СПЕЦИФИКАЦИЯ
- 10. Arrange Act Assert ПРАВИЛЬНАЯ СТРУКТУРА ТЕСТА
- 11. АНТИПАТТЕРНЫ https://habr.com/post/43761/
- 12. ПОЧЕМУ НЕ ВСЕ ПИШУТ ТЕСТЫ?
- 13. ПИШЕМ ТЕСТЫ ЛЕГКО ТЕСТ НАПИСАТЬ – КАК ЧАЙ ПОПИТЬ
- 14. БОРЬБА С ДУБЛИРОВАНИЕМ
- 15. СБОРКА И РАЗБОРКА ОКРУЖЕНИЯ [OneTimeSetUp|OneTimeTearDown] [SetUp|TearDown]
- 16. [TestFixture] public class Mailbox_Should { private Mailbox mailbox; [SetUp] public void SetUp() { mailbox = new
- 17. OBJECT MOTHER & TEST DATA BUILDER
- 18. PARAMETRIZED TESTS ОНИ ЖЕ DATA DRIVEN
- 19. ДОПОЛНИТЕЛЬНЫЕ ТРЮКИ
- 20. Assert.AreEqual(expected, actual) VS Assert.AreEqual(actual, expected) Assert.That(2+2, Is.EqualTo(4)) Assert.That(x, IResolveConstraint) ASSERT // O_o ?!?
- 21. (2+2).Should().Be(4) flag.Should().BeTrue() new[] {1,2,3} .Should().AllBeEquivalentTo(new [] {3,2,1}); new[] {1,2,3} .Should().AllBeEquivalentTo( new [] {1,2,3}, options => options.WithStrictOrdering());
- 22. Action action = () => { var z = x / y; }; action.ShouldThrow (); ОЖИДАНИЕ
- 23. [Test, Timeout(1000)] public void ShouldDoInTimeout() { … } ОГРАНИЧЕНИЕ ПО ВРЕМЕНИ
- 24. [Test, Category("Smokie")] public void Test() { … } ВЫБОР ТЕСТОВ ДЛЯ ПРОГОНА
- 25. LIVE TEMPLATES Resharper → Tools → Templates Explorer Import tests-templates.DotSettings tf — TestFixture tt — Test
- 26. HOTKEYS Ctrl+T+R Ctrl+U+R
- 27. CHALLENGE
- 28. WordsStatistics WordStatisticsXXX Ctrl+F5 CHALLENGE
- 29. Тесты по спецификации — это просто Как взаимодействуют разные пункты спецификации? CHALLENGE РАЗБОР
- 30. Важен не только результат, но и время выполнения CHALLENGE РАЗБОР
- 31. Тесты не заменяют Code Review Code Review не заменяет тесты CHALLENGE РАЗБОР
- 33. Скачать презентацию

![[TestFixture] public class Superman_Should { [Test] public void SaveKittenFromTree() { … superman.Act();](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1156638/slide-2.jpg)
![[TestFixture] public class Superman_Should { [Test] public void SaveKittenFromTree() {…} [Test] public](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1156638/slide-3.jpg)










![СБОРКА И РАЗБОРКА ОКРУЖЕНИЯ [OneTimeSetUp|OneTimeTearDown] [SetUp|TearDown]](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1156638/slide-14.jpg)
![[TestFixture] public class Mailbox_Should { private Mailbox mailbox; [SetUp] public void SetUp()](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1156638/slide-15.jpg)




![(2+2).Should().Be(4) flag.Should().BeTrue() new[] {1,2,3} .Should().AllBeEquivalentTo(new [] {3,2,1}); new[] {1,2,3} .Should().AllBeEquivalentTo( new []](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1156638/slide-20.jpg)

![[Test, Timeout(1000)] public void ShouldDoInTimeout() { … } ОГРАНИЧЕНИЕ ПО ВРЕМЕНИ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1156638/slide-22.jpg)
![[Test, Category("Smokie")] public void Test() { … } ВЫБОР ТЕСТОВ ДЛЯ ПРОГОНА](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1156638/slide-23.jpg)







Python для Data Science
Структуры, перечисления: их синтаксис и назначение (лекция 13)
Основные типы алгоритмических структур
Электронный учебник Создание презентаций
Организация вычислений в электронных таблицах. Обработка числовой информации в электронных таблицах (9 класс)
На штурм алгоритмов
Базы данных. СУБД
Разработка требований к ПО
Подсистема энтропийного кодирования при сжатии информации
Декларация независимости киберпространства Дж.Д.Барлоу
Лайк и лайкозависимость
Персональные данные: проблемы использования и защиты
Общие сведения о сетях и системах передачи информации
Продуктовое направление. Отчет 2021. Стратегия 2022. Работа с Битриксом , работа над реплатформингом
Параллельное программирование в стандарте OpenMP
Информация - это …
Информационные системы и технологии в административном управлении
Освоение HTML, CSS, JS (09)
Компьютерные технологии в науке, производстве и образовании
Техническое задание: D-Farma Спортивная фармакология
Кодирование информации
Функции в С++. Перегрузка функций. (Лекция 3)
Фундаментальные и прикладные науки
Использование ИКТ при реализации программы предпрофессиональной подготовки. Метод слепой печати с элементами делопроизводства
Развитие сайта. Представление
Пекмен. Цирк
Современный образовательный портал
Advertising Media