Модуль - UnitTest
Приветствую всех поклонников ЧА.
Требуется помощь, в тестирование не офф. модуля - UnitTest.
Вступление или причина возникновения модуля.
Любое программное обеспечение имеет подпрограмму контроля работы системы, для Windows(c) это checkdisk - которая проверяет файлы на целостность и файловую таблицу, в случае проблем исправляет её; scanreg - проверяет реестр и правит его. При разработке программ используется методология "Юнит-тест", которая призвана проверить создаваемую программу на правильную отработку своих задач. В датасайн (data-science) при обучения ИИ в "deep learning" (глубокое обучение) используется метод - "обучение с подтверждением", его задача, проще говоря, - сводится к тому чтобы указывать системе на её ошибки и в дальнейшем при обучение учитывать и избегать ошибочные решения. Так вот, для любой сложной системы, по любому нужна - простая функциональная подсистема для проверки корректности работы самой системы, некий шаблон правил при соблюдение которых система может стабильно работать/функционировать.
Прототипом модуля "Юнит-тест" для Черного Ангела послужила злая Сандра из Канбан.
Лор.
Черный Ангел содержит помимо 2-4 искусственных интеллектов (ИИ), которые управляют хозяйственной деятельностью на корабле и имеют систему учета этой деятельности в виде пунктов оценки (ПО), так ещё и встроенную систему "Юнит-тест". Юнит-тест предназначен для общей оценки положения дел на корабле и низкоуровневой корректировки деятельности/обучения ИИ корабля, путем уменьшения(штрафования в системе учета) оценочных показателей ПО(пунктов оценки) определенного ИИ. Триггером для проверки служат перебои в работе системы.
Правила.
Понятия:
- Зеленая-система - зона хранения кубиков зелёного цвета (стр.2 план корабля, область 5).
- Желтая-система - зона хранения кубиков оранжевого цвета (стр.2 план корабля, область 5).
- Серая-система - зона хранения кубиков серого цвета (стр.2 план корабля, область 5).
- Черная-система - область коридора корабля (коридор до "рубки") для выставления жетона "юнит-теста" на плане корабля, и любая карта делегации (активированная) в космосе для учета при проверки.
Появление:
Юнит-тест вводится в игру, как только будет задействован кубик с символом "звезда" в одной из систем корабля (появление кубика с символом "звезда" в любой зоне хранения кубов), в систему выкладывается жетон "юнит-теста" (может служить фишка "ресурса" в виде кристалла). Под "вводом" подразумевается использование кубика для активации действий, карты на поле космоса так-же учитываются.
Порядок использования:
Юнит-тест - запускается после действий всех игроков. Будет запускаться для системы, в которой больше всего кубиков с звездами (большое количество кубов с звездами в системе корабля подразумевает, что система работает не на полную мощность, возможно там ошибки/проблемы - поэтому нужно проверить её), если одинаково то по часовой стрелке от текущего места жетона юнит-теста. Если звезд нет, но жетон "юнит-теста" уже введен в игру, то проверка запускается для следующий по часовой стрелке - системы. Жетон Юнит-теста передвигается на тестируемую систему.
Проверка системы:
- Зеленая-система: Должно быть не больше N(3) карт Разорителей на корабле, если больше - то у кого меньше карт Разорителей на руке тот получает штраф в ВсегоКартРазорителейНаКорабле-N в ПО. В случае если таких несколько игроков, с равным количеством карт Разорителей, то штраф получают все данные игроки.
- Желтая-система: Должно быть выложено N(6) жетонов технологий на планшете у игрока (по умолчанию уже 3 есть!), у кого меньше тот получает штраф по 1ПО за каждый недостающий жетон до N.
- Серая-система: Должно быть не больше N(3) фишек повреждений на корабле, если больше то у кого меньше фишек повреждений в "запасе" тот получает штраф в ВсегоПоврежденийНаКорабле-N в ПО.
- Черная-система: Должно быть в космосе (на планетах, картах делегации!) не меньше N(3) роботов, у кого меньше тот получает штраф по 1ПО за каждого недостающего робота до N.
Требуется тест:
Нужно точно определить сколько минимальное значение для каждой проверяемой системы корабля, то самое число N, конечно в скобках указана тестовая цифра, но возможно надо откорректировать для баланса. Так-же нужно точно определить со скольки ПО начинать игру игроку, т.к. сначала игры могут быть сразу много штрафов, например в Канбан игроки начинают с 15 ПО.