Филипп Кекс "Как научить роботов играть в игры?"

Post on 22-Jan-2017

122 Views

Category:

Education

4 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Как научить роботов играть в игры?

Филипп Кекс

Зачем?

3

“В здоровом обществе должны существовать табу, при попытке оспорить которые любой автоматически считается идиотом”

Slavoj Žižek

4

Как?

5

Как?

Кто? Что? Чем?

6

Кто занимается автоматизацией?

● Тестировщик● Разработчик● Автоматизатор● Заказчик● Посредник

7

Кто занимается автоматизацией?

Разработчик

8

Что следует автоматизировать?

● Весь процесс системного тестирования● Только самые важные части системы● Каждый логический слой отдельно

9

Что следует автоматизировать?

Каждый логический слой отдельно

10

Чем?

● Selenium● WebDriver● Fitnesse● Autoit● xUnit● Самоделкин

11

Чем?

Выбирай инструмент соответствующий среде разработки

12

Наша среда разработки● Unity3D● C# + Mono (.Net 2.0 API)● Кастомный UI● Android, iOS, Windows Phone, Desktop● Ввод: Сенсорный экран, акселерометр,

джойстик● Online приложение

13

Требования к тестам

● UI и Unit● Запуск на любой платформе● Изолированность● Скорость

14

UI Сцена

Контроллер Контроллер

ЛогическийКомпонент

ЛогическийКомпонент

Клиент

Сервер

15

UI Сцена

Контроллер Контроллер

Mock Mock

UI Тест

16

Логический компонент

Mock

Unit Тест

17

Замена компонентов на Mock

● Самодельный фреймворк внедрения зависимостей

● Минимальный функционал● <150 строк кода

18

Управление UI и сцен

● Самодельная автоматизация UI● ~400 строк кода

19

Unit тесты

● NUnit● Самодельный запуск внутри приложения

20

Пора кодить!{\_/}

{#_#}{} {}

21

Запуск● Jenkins сервер● Полный прогон всех тестов в каждом

цикле сборки● Периодический прогон на всевозможных

устройствах (Ктулху)● Ручной запуск любой сборки (включая

релиз) в режиме тестирования

22

“Ктулху” - тестовый стенд

23

24

Исходный код

● Github: http://github.com/taphos/unity-uitest● Asset store: http://u3d.as/Ba0

25

Самоделкин научил...

26

Спасибо!● http://blog.filippkeks.com● http://linkedin.com/in/filippkeks● filipp@azib.net

top related