В ReadyScript 3.0 была добавлена новая утилита в разделе Управление → Сайты под названием "Самотестирование". Данная утилита особенно полезна, при смене хостинга, чтобы узнать соответствуют ли на новом хостинге настройки требованиям платформы ReadyScript. Часто бывает так, что скрипт успешно запускается, но отсутствие необходимых модулей PHP или настроек способны давать сбой лишь при выполнении какой-то операции или переходе в какой-либо раздел сайта, утилита создана с целью информирования и предотвращения подобных ситуаций заранее.
Утилита последовательно запускает тесты и выдает результат. Если результат по какому-либо тесту отрицательный, то отображается пояснение для устранения несоответствия.
Если вы разрабатываете индивидуальный модуль, для которого требуется особые серверные настройки, рекомендуем создавать тест серверного окружения. Чтобы пользователь мог понять, что не так с его настройками в случае возникновения непредвиденного поведения системы.
Рассмотрим как происходит процесс тестирования. Когда пользователь запускает самотестирование, ReadyScript выполняет поиск классов-тестов по маске \{ИМЯ МОДУЛЯ}\Model\SystemCheck\Test\{ИМЯ КЛАССА ТЕСТА}. Класс обязательно должен быть потомком от класса Main::Model::SystemCheck::AbstractSystemTest.
Посмотрим, что из себя представляет данный абстрактный класс:
Как видно, он выступает частично в роли интерфейса и описывает набор обязательных для реализации методов у потомков. Рассмотрим на примере, как должен выглядеть один тест: