UNIT TESTING ⚡️ Правильно внедряем unit-тесты в Unity проект
Все вокруг говорят про Unit testing, что это полезно и круто, но есть ощущение, что только говорят, и никто толком не знает, что делать с этим юнит тестированием? :). В видео расскажем, как внедрить Unit тесты в свои Юнити - проекты, как перестать их бояться, и что делать, чтобы они наконец-то появились в developers team :)
- Как перестать смотреть на юнит тест так, будто это замедляет разработку и начать использовать их для ее ускорения
- Как внедрить юнит тесты в команде
- Как начать их использовать на существующих Unity проектах
- И в целом - как писать юнит-тесты, чтобы это было легко и удобно :)
Наш портал:
По всем вопросам:
==============================================
00:00 Начало
00:11 Приветствие
02:16 Тема трансляции
05:51 Немного теории
06:53 Как начать писать тесты?
09:24 Почему Алексей рекомендует ставить FluentAssertions
10:26 На что будем писать тест? Выбираем unit under test
16:18 Начинаем писать тест
18:57 Делаем live template для теста и обсуждаем для чего это нужно
19:59 Где добавлять новый лайв темплейт?
20:49 Чем помогает template?
21:15 Название теста. Зачем оно нужно? И его задача.
22:38 Где мы будем их использовать?
24:34 Пишем название для теста, начиная с When Act
25:36 And Arrange. Что это?
26:00 Что мы будем проверять?
27:49 Then Assert
28:30 Алгоритм написания теста
30:18 Чиним ошибки компиляции
31:30 Запускаем и смотрим вывод
34:00 Прописываем Act
36:14 Сетапим, stub-им и mock-аем
39:45 Общение с чатиком
39:49 Ответ на вопрос: Как быть если свойство инкапсулировано и доступен только для чтения?
41:34 Ответ на вопрос: Можно ли застабать синглтон?
43:49 Продолжаем сетапить тест
44:49 Запускаем. Проверяем. Исправляем
45:45 Логика алгоритма
46:56 Тест вроде как работает, но это не точно)
47:55 Проверяем тест на ложноположительность
49:34 Не бойтесь, что вы что то сломаете или забудете
50:12 Проверка на ложноотрицательность
51:06 Пример проблемного (хрупкого) теста
53:20 Так тесты это плохо? Они же мешают и замедляют разработку? Или все-таки нет?
54:49 Как придумать проверку
56:13 Еще один пример проблемного теста
59:40 Ответ на вопрос: Два assert в рамках одного теста нормальная практика?
01:01:36 Отвечаем на вопросы из чата
01:04:22 Еще раз алгоритм
01:05:16 Рефакторинг теста
01:09:26 Выносим Setup
01:12:45 Маленький и понятный тест
01:13:02 Проверяем что тест все еще тестирует
01:13:12 Отвечаем на вопросы из чата
01:17:34 Что нужно, чтобы признать тест рабочим? Возвращаемся к названию
01:19:45 Пример использования атрибутов Setup и Teardown
01:20:51 Ответ на вопрос: Есть ли тест SetUp?
01:21:13 Вроде готово, но...
01:22:35 Что нужно, чтобы улучшить читаемость? Логирование!
01:24:25 Тест готов!
01:24:31 Как тесты добавлять в проект и как быть с командой? Опыт работы
01:26:51 Как выбрать тест, который писать?
01:27:11 CI (Continuous Integration)
01:28:32 Отвечаем на вопросы из чата
01:35:01 Фреймворки, которые мы используем
01:35:35 Ответ на вопрос: Дело ж не в том, что пишется тест сначала? (Вопрос про TDD)
01:36:52 Ответ на вопрос: Парное программирование? (Реально работает)
01:39:05 Есть смысл тестов если нету максимального покрытия (Сoverage)
01:42:05 Ответ на вопрос: Нужны ли автоматизаторы для написания тестов?
01:45:12 Ответ на вопрос: Как перестать тестировать одну фичу?
01:46:49 Завершение стрима
==============================================
КУРС СРАБОТАЕТ ДЛЯ ВАС, ЕСЛИ
- Вам надоело ощущение нестабильности и необходимость постоянно переписывать код инфраструктуры проекта
- Вам постоянно неудобно добавлять новые модули в игру
- Сталкиваетесь с проблемами порядка инициализации, когда что-то должно дожидаться другого, но явно это нигде не выражено
- Непонятно как справится с огромным [модуль-нейм] Контроллером, который продолжает разрастаться
- Синглтоны работали некоторое время, но теперь трещат по швам
На курсе вы полностью напишите достаточно объемный проект, весь его код, чтобы понимать все нюансы.
Среди прочего:
- Разберемся с созданием удобного entry point-а для игры
- Разберем идеологию Dependency Injection, напишем простейшую реализацию вручную, без библотек. Обсудим холивары и отследим переход к более продвинутым реализациям
- Улучшим навыки сборки UI
- Дополним инструментарий Editor-a
- Разделаемся с нюансами сборки игры под разные платформы
И многое другое, чтобы сразу же использовать в своих текущих проектах или начать новые!
Запись наших вебинаров:
Запись наших стримов:
(18 )
#unity #gamedev #unittesting #unitytutorial
1 view
28
2
8 years ago 00:02:23 75
Software Testing Tutorial 4: Unit Testing
7 years ago 00:14:59 18
C++ Unit Testing with Google Test Tutorial
4 years ago 00:04:46 30
Unit Testing Vue 3 | What to test?
9 years ago 00:58:37 33
Spring Dependency Injection - with Unit Testing
8 years ago 00:48:31 13
justforfunc #16: unit testing HTTP servers
7 years ago 00:03:02 24
Unit testing with PHPUnit: Introduction (1/10)
5 years ago 01:15:04 65
Владимир Хориков “Effective Unit Testing“
5 years ago 00:59:13 18
Vladimir Khorikov — Pragmatic unit testing
4 years ago 00:26:25 5
Unit Testing in Python
4 years ago 02:08:34 31
Unit Testing in - with Gwen Faraday
7 years ago 00:10:19 4
What Is Unit Testing?
7 years ago 00:05:54 12
Unit testing with PHPUnit: Setting up PHPUnit (2/10)
9 years ago 01:00:58 23
Unit Testing Express Middleware / TDD with Express and Mocha
5 years ago 02:16:34 31
[LIVE] Pre-Release Unit - AnyCubic Mega Zero - Assembly & Testing
4 years ago 00:16:26 38
Выпуск 153. Подключение Hibernate, Spring и проверка на unit-tests.
9 years ago 00:38:14 13
Unit testing and CI with mocha and spacejam - Ronen Babayoff
6 years ago 00:15:40 22
Testing Guide: Unit Tests and E2E Testing (Cypress)
5 years ago 00:38:52 1
Unit Testing: MOQ Framework
3 years ago 00:14:42 11
Модульное тестирование / Unit Testing в Java: Тестирование выбрасываемого методом исключения
4 years ago 00:30:36 1
DbUnit Database(db) Unit Testing
2 years ago 00:05:31 1
Unit testing C# NUnit tutorial
7 years ago 00:23:38 31
Unit testing in JavaScript Part 2 - Your first tests
12 years ago 00:29:09 14
Hands-On Unit Testing With PHPUnit
7 years ago 00:21:58 8
Unit testing with PHPUnit: Testing a User model (4/10)