Вчера мы с Вами начали знакомиться со слоем для тестирования коннекторов в OsEngine. А сегодня будем смотреть, как они реализованы технически.
К слову сказать, созданы тесты на базе обычного робота для OsEngine. А это статья — обзор этого робота.
![Слой тестирования #2. Обзор робота для тестов. Коннекторы к OsEngine #40 Слой тестирования #2. Обзор робота для тестов. Коннекторы к OsEngine #40](/uploads/2024/images/00/78/53/2024/01/06/c86aba.webp)
1. Робот для тестов внутри проекта:
![Слой тестирования #2. Обзор робота для тестов. Коннекторы к OsEngine #40 Слой тестирования #2. Обзор робота для тестов. Коннекторы к OsEngine #40](/uploads/2024/images/00/78/53/2024/01/06/7d8ad8.webp)
2. Регионы внутри WServerTester.
В роботе для тестов есть всего три региона:
![Слой тестирования #2. Обзор робота для тестов. Коннекторы к OsEngine #40 Слой тестирования #2. Обзор робота для тестов. Коннекторы к OsEngine #40](/uploads/2024/images/00/78/53/2024/01/06/cc54f3.webp)
- Конструктор и параметры для тестов.
- Обработчики кнопок для старта тестов.
- Создание и обработка работы самих тестов.
3. РегионSettings and Params подробнее.
![Слой тестирования #2. Обзор робота для тестов. Коннекторы к OsEngine #40 Слой тестирования #2. Обзор робота для тестов. Коннекторы к OsEngine #40](/uploads/2024/images/00/78/53/2024/01/06/dbaeb3.webp)
- Конструктор робота.
- Имя робота для системы.
- Пустой метод для вызова окна индивидуальных настроек.
- Настройки для различных тестов.
4. РегионStart Test By Buttons подробнее.
![Слой тестирования #2. Обзор робота для тестов. Коннекторы к OsEngine #40 Слой тестирования #2. Обзор робота для тестов. Коннекторы к OsEngine #40](/uploads/2024/images/00/78/53/2024/01/06/2fdfa9.webp)
- Обработчики кнопок старта тестов.
- Тип теста, который выбрал пользователь, кликнув по кнопке.
5. РегионTest work thread подробнее.
![Слой тестирования #2. Обзор робота для тестов. Коннекторы к OsEngine #40 Слой тестирования #2. Обзор робота для тестов. Коннекторы к OsEngine #40](/uploads/2024/images/00/78/53/2024/01/06/99a60a.webp)
- Место работы потока, запускающего тесты и создающего его.
- Поле, указывающее на то, включен ли в данный момент тест или нет.
- Кол-во запущенных в данный момент тестов.
- Блокиратор многопоточного доступа к запуску тестов.
- Событие завершения какого-то теста.
6. Перечисление реализованных тестов.
![Слой тестирования #2. Обзор робота для тестов. Коннекторы к OsEngine #40 Слой тестирования #2. Обзор робота для тестов. Коннекторы к OsEngine #40](/uploads/2024/images/00/78/53/2024/01/06/27c3eb.webp)
7. Абстракция для теста (AServerTester).
Каждый тест в OsEngine является наследником класса AServerTester. В нём находятся функции, которые нужны в каждом тесте.
![Слой тестирования #2. Обзор робота для тестов. Коннекторы к OsEngine #40 Слой тестирования #2. Обзор робота для тестов. Коннекторы к OsEngine #40](/uploads/2024/images/00/78/53/2024/01/06/757db6.webp)
- Коннектор, который мы будем тестировать.
- Начать тест. Метод, вызывающий метод Process в новом потоке.
- Метод работы теста. Единственный обязательный к перегрузке член, вызывается в новом потоке. Именно в нём надо как-то тестировать коннектор.
- Взять отчёт о тестировании.
- Сохранить сервисную информацию по тесту.
- Хранилище записей с сервисной информацией.
- Сохранить ошибку по тесту.
- Хранилище записей с ошибками.
- Метод для отсылки экстренных сообщений на верх в случае ошибок.
- Метод, который НУЖНО вызвать при завершении любого вида теста.
- Событие с завершением теста.
8. Сами тесты.
Реализацию тестов можно посмотреть в любом из них:
![Слой тестирования #2. Обзор робота для тестов. Коннекторы к OsEngine #40 Слой тестирования #2. Обзор робота для тестов. Коннекторы к OsEngine #40](/uploads/2024/images/00/78/53/2024/01/06/332f34.webp)
Далее, будем разговаривать про каждый из этих тестов в отдельности. Что они проверяют, как их запустить.
Удачных алгоритмов!
Пост из серии «Коннекторы к OsEngine»
Серия о том, как стать настоящим программистом и изменить свою профессию.
Оглавление и смыслы здесь: https://smart-lab.ru/company/os_engine/blog/959953.php
Комментарии открыты для друзей, добавляйтесь!
![Слой тестирования #2. Обзор робота для тестов. Коннекторы к OsEngine #40 Слой тестирования #2. Обзор робота для тестов. Коннекторы к OsEngine #40](/uploads/2024/images/21/16/44/2024/08/22/50c5ba.webp)
OsEngine: https://github.com/AlexWan/OsEngine
Поддержка OsEngine: https://t.me/osengine_official_support
Регистрируйся в АЛОР и получай бонусы: https://www.alorbroker.ru/open
Сайт АЛОР БРОКЕР: https://www.alorbroker.ru
Раздел «Для клиентов»: https://www.alorbroker.ru/openinfo/for-clients
Программа лояльности от АЛОР БРОКЕР и OsEngine: https://smart-lab.ru/company/os_engine/blog/972745.php
![Слой тестирования #2. Обзор робота для тестов. Коннекторы к OsEngine #40 Слой тестирования #2. Обзор робота для тестов. Коннекторы к OsEngine #40](/uploads/2024/images/00/78/53/2024/01/06/5fb44a.webp)