Содержание

Тестування гри

Перед запуском гри для реальних гравців вкрай важливо переконатися, що всі завдання відображаються коректно, коди приймаються без збоїв, а підказки приходять вчасно.

1. Швидке тестування автором (Одиночний тест)

Будь-який автор може протестувати гру в один клік просто з редактора: кнопка “Тестувати Гру” у верхній панелі відкриває гру в новій вкладці. Якщо в чернетці є незбережені правки, редактор спершу покаже їх списком і запропонує зберегти — тест показує те, що лежить на сервері.

2. Панель тестера

Унизу сторінки в тестера стоїть панель, якої в гравця немає. Усі інструменти тестування живуть у ній: раніше вони були розкидані по сторінці, тепер зібрані по вкладках.

Число біля назви вкладки — її лічильник: у «Завдань» це «відкрито з усього», у «Шаблонів» — скільки шаблонів розібрано, у «Помилок js» — скільки різних поломок.

Вкладка «Завдання»

Вкладка «Завдання»: схема лінійки, стан кожного рівня і рядок дій

Згори — інструменти:

Нижче — «Порядок завдань», якщо в гри більше однієї лінійки. Вибір лінійки сам нічого не застосовує: він показує її схему сірими номерами, відбиту рискою ліворуч, а застосується вона рестартом — кнопкою «Рестарт з 1-го рівня» або «Рестарт звідси» на обраному рівні.

Схема лінійки

Це не плаский список номерів, а структура гри: послідовні рівні йдуть праворуч через ›, штурмові гілки висять вниз на спільній планці, випадковий порядок помічено ?.

Стан рівня видно за номером:

Вигляд Що означає
залито блакитним рівень, на якому ви зараз
блакитна рамка відкритий, але ви не на ньому
зелений пройдений
пунктир ще закритий

Перейти чи почати звідси

Під схемою — рядок дій. Поки номер не обрано, у ньому стоїть поточний рівень.

Клік по номеру більше не перезапускає гру. Перший клік лише обирає рівень і показує, що з ним можна зробити. Повторний клік по вже обраному номеру — це «Рестарт звідси»: на телефоні по номеру влучають випадково, а рестарт не скасувати.

Обидві дії — звичайні посилання, тож адресу рівня можна скопіювати й надіслати авторові.

Міняти лінійку вправі не всякий тестер: запрошеній команді стрибок по рівнях спрацює, а вибір лінійки мовчки не застосується.

Вкладка «Шаблони»

Вона показує, що рушій зробив із шаблонами {% match %} на цій сторінці: який шаблон, яке значення перевірялося, яка гілка спрацювала і які були варіанти. Вкладені шаблони зсунуті праворуч — їх розбирали тільки тому, що спрацювала гілка вище.

Вкладка «Шаблони»: який match що перевіряв і яка гілка спрацювала

Вибір гілки: завдання перемальовується так, наче спрацювала вона

Поки гілку обрано вручну, згори висить жовта плашка: завдання показано не так, як його побачить гравець. Зняти — кнопкою «повернути як є» або повторним кліком по тому самому варіанту. Підміна живе до закриття браузера і видна лише вам.

Так перевіряється гілка, у яку інакше не потрапити: індивідуальне завдання для чужої команди, гілка ?, гілка «відповіді ще немає».

Вкладка «Редактор»

Поточне завдання в редакторі, не виходячи з гри: текст, коди, бонуси, підказки. Раніше це був згорнутий блок над завданням — тепер вкладка.

Редактор відкривається з адмінського хоста, і сесія в нього своя. Якщо ви туди ще не входили, у вкладці буде форма входу, а увійти просто в ній не можна. Тоді — посилання «Відкрити редактор у новій вкладці», увійти там, і вкладка запрацює.

Усе, що стосується гри цілком — налаштування, порядок завдань, номер завдання, — правиться в редакторі гри: посилання «Редактор гри» є на вкладці «Завдання».

Вкладка «Помилки js»

Її не видно, поки все гаразд; перша ж помилка у скрипті сама показує вкладку і розгортає панель, навіть якщо панель була вимкнена.

Ловляться помилки у скриптах завдань, підказок, бонусів і наскрізних бонусів, а також асинхронні — з setTimeout, fetch і async-функцій: раніше такі падали мовчки. Однакові складаються в один запис із лічильником.

Навмисно не записуються помилки браузерних розширень і безіменне «Script error.» із чужих доменів — це не ваш код, і в журналі від них лише шум.

Вкладки, яких може не бути

Немає вкладки — отже, показувати нічого, а не зламалося:

Прибрати панель з екрана

Перемикач «Тестові контроли» — у меню гри: гамбургер праворуч угорі, розділ «Налаштування», останній перемикач. Він ховає панель, але не назавжди: перша ж помилка скрипта поверне її і відкриє на «Помилках js».

Щоб панелі не було зовсім — наприклад, для скриншотів чи відео, — відкрийте гру з ?debug_panel=0. Повернення — ?debug_panel=1. Врахуйте: тоді тестер лишається зовсім без інструментів.

3. Командне тестування (Тестери)

Ви можете запрошувати сторонніх гравців або цілі команди для незалежного тестування:

  1. Команда тестерів має подати стандартну заявку на вашу гру на сайті.
  2. У блоці “Подали Заявки” на сторінці гри поруч із цією командою з'являться дві кнопки: “Прийняти” пускає команду у гру по-справжньому, “Дозволити Тест” — тільки на тест.

Заявки: «Прийняти» пускає команду у гру, «Дозволити Тест» — тільки на тест

  1. Після прийняття команда зможе зайти у гру будь-коли (навіть до офіційного старту).
  2. Тестери грають в абсолютно реальному ігровому інтерфейсі: коди проходження рівнів їм не видно.

Панель тестера у запрошеної команди теж є — без вкладки «Коди» і без права міняти лінійку. Рестарт і перемотка часу їм доступні, на вкладці «Завдання».

4. Тестування від особи своєї команди

Автор гри може подати заявку від особи своєї власної команди і прийняти її як тестерів. Це дозволяє перевірити, як гра виглядає на екранах напарників.

Зверніть увагу: У цьому разі всі учасники вашої команди отримають доступ до гри до її початку. Переконайтеся, що члени вашої команди не є реальними учасниками майбутньої гри.