Универсальная система заглушек для эмуляции...
TRANSCRIPT
![Page 1: Универсальная система заглушек для эмуляции банковских систем](https://reader035.vdocuments.net/reader035/viewer/2022062320/55b3c0a3bb61ebf8508b45b8/html5/thumbnails/1.jpg)
Software quality assurance days17 Международная конференция по вопросам качества ПО
sqadays.com
Минск. 29–30 мая 2015
Дмитрий ВербовскийСбербанк - Технологии. Минск, Беларусь.
Универсальная система заглушек для эмуляции банковских систем.
![Page 2: Универсальная система заглушек для эмуляции банковских систем](https://reader035.vdocuments.net/reader035/viewer/2022062320/55b3c0a3bb61ebf8508b45b8/html5/thumbnails/2.jpg)
Универсальная система заглушек для эмуляции банковских систем.
О себе
Дмитрий Вербовский
Специализация - высоконагруженные системы. С 2011 г. занимаюсь тестированием производительности,от разработки методики до анализа результатов.
![Page 3: Универсальная система заглушек для эмуляции банковских систем](https://reader035.vdocuments.net/reader035/viewer/2022062320/55b3c0a3bb61ebf8508b45b8/html5/thumbnails/3.jpg)
Универсальная система заглушек для эмуляции банковских систем.
Примеры запроса к системе и ответа от нее
<Outgoing><RequestID>123456</
RequestID><Client>Ivanov</Client><CreditHistory>OK</
CreditHistory></Outgoing>
<Incoming><RequestID>123456</RequestID><Client>Ivanov</Client><Operation>GetCreditHistory</
Operation></Incoming>
Создает ответ:
Система получает запрос:
![Page 4: Универсальная система заглушек для эмуляции банковских систем](https://reader035.vdocuments.net/reader035/viewer/2022062320/55b3c0a3bb61ebf8508b45b8/html5/thumbnails/4.jpg)
Универсальная система заглушек для эмуляции банковских систем.
Корпоративная системная шина (КСШ)
Путь сообщения:•Система отправитель•Выходная очередь отправителя•Адаптер шины•Транспорт по шине•Адаптер системы получателя•Входная очередь получателя•Система получатель
![Page 5: Универсальная система заглушек для эмуляции банковских систем](https://reader035.vdocuments.net/reader035/viewer/2022062320/55b3c0a3bb61ebf8508b45b8/html5/thumbnails/5.jpg)
Пример операции
Универсальная система заглушек для эмуляции банковских систем.
1
2 3.1
3.2 3.3
4 5
6
Запрос наполучениекредита
Запрос кредитнойистории клиента
Запрос информациииз внутреннихисточников
Запрос информацииот внешних банков
Преобразование вовнутренний формат
Агрегирование изнескольких источников
Принятие решенияо выдаче кредита
Создание печатныхформ
![Page 6: Универсальная система заглушек для эмуляции банковских систем](https://reader035.vdocuments.net/reader035/viewer/2022062320/55b3c0a3bb61ebf8508b45b8/html5/thumbnails/6.jpg)
Проблематика тестирования шины
Необходимо:•Создать заглушки для систем использующих шину.
•Минимизировать время на их создание и доработку.
•Управлять запуском и остановкой большого числа
заглушек.
•Собирать статистику работы заглушек.
Универсальная система заглушек для эмуляции банковских систем.
![Page 7: Универсальная система заглушек для эмуляции банковских систем](https://reader035.vdocuments.net/reader035/viewer/2022062320/55b3c0a3bb61ebf8508b45b8/html5/thumbnails/7.jpg)
Требования к системе заглушек
• Время на разработку новой заглушки менее 1
дня.
• Возможность развернуть наборы заглушек на
нескольких стендах из одной точки.
• Сбор статистики работы в одной точке.
• Легкие: 60-80 заглушек на одном стенде.
• Быстрые: обработка >1000 сообщений в секунду.
• Тестировщик может сам создать и подключить
новую заглушку без участия программиста.
• Для запуска не требуется специальных знаний.
Универсальная система заглушек для эмуляции банковских систем.
![Page 8: Универсальная система заглушек для эмуляции банковских систем](https://reader035.vdocuments.net/reader035/viewer/2022062320/55b3c0a3bb61ebf8508b45b8/html5/thumbnails/8.jpg)
Что такое типовая заглушка?
Универсальная система заглушек для эмуляции банковских систем.
![Page 9: Универсальная система заглушек для эмуляции банковских систем](https://reader035.vdocuments.net/reader035/viewer/2022062320/55b3c0a3bb61ebf8508b45b8/html5/thumbnails/9.jpg)
Что конфигурируем?
• Параметры входящх\исходящих очередей
• Путь к хранилищу шаблонов
• Правила поиска шаблона
• Параметры, получаемые из входящего сообщения
• Параметры, подставляемые в исходящее
сообщение
• Длительность задержки перед отправкой ответа
• Адрес получателя статистики и частота ее
отправки
• Адрес для получения служебных команд
Универсальная система заглушек для эмуляции банковских систем.
![Page 10: Универсальная система заглушек для эмуляции банковских систем](https://reader035.vdocuments.net/reader035/viewer/2022062320/55b3c0a3bb61ebf8508b45b8/html5/thumbnails/10.jpg)
Принцип конфигурации заглушки
Универсальная система заглушек для эмуляции банковских систем.
![Page 11: Универсальная система заглушек для эмуляции банковских систем](https://reader035.vdocuments.net/reader035/viewer/2022062320/55b3c0a3bb61ebf8508b45b8/html5/thumbnails/11.jpg)
Принцип обработки входящих сообщений
• Для получения и сохранения данных из входящего сообщения, существуют так называемые Extractors разных типов.
• Для замены данных в шаблонах используются Replacers. Replacers используют значения, полученные при помощи Extractors.
Универсальная система заглушек для эмуляции банковских систем.
![Page 12: Универсальная система заглушек для эмуляции банковских систем](https://reader035.vdocuments.net/reader035/viewer/2022062320/55b3c0a3bb61ebf8508b45b8/html5/thumbnails/12.jpg)
Extractors & Replacers
<Incoming> <RqUID>20130111134615964</RqUID> <StatusCode>0</StatusCode> <StatusDesc>Ok</StatusDesc></Incoming>
<Outgoing> <MsgID>20130111134615964</MsgID> <transactionId>1</transactionId> </Outgoing>
<Replacer><Type>ByTagName</Type><TagName>MsgID</TagName><ExName>Ex_RqUID</ExName>
</Replacer>
<Extractor><Type>ByTagName</Type><TagName>RqUID</TagName><ExName>Ex_RqUID</ExName>
</Extractor>
Универсальная система заглушек для эмуляции банковских систем.
![Page 13: Универсальная система заглушек для эмуляции банковских систем](https://reader035.vdocuments.net/reader035/viewer/2022062320/55b3c0a3bb61ebf8508b45b8/html5/thumbnails/13.jpg)
Профили заглушек
Универсальная система заглушек для эмуляции банковских систем.
![Page 14: Универсальная система заглушек для эмуляции банковских систем](https://reader035.vdocuments.net/reader035/viewer/2022062320/55b3c0a3bb61ebf8508b45b8/html5/thumbnails/14.jpg)
Система управления заглушками
Универсальная система заглушек для эмуляции банковских систем.
![Page 15: Универсальная система заглушек для эмуляции банковских систем](https://reader035.vdocuments.net/reader035/viewer/2022062320/55b3c0a3bb61ebf8508b45b8/html5/thumbnails/15.jpg)
Подведем итоги
• Разные проекты (НТ, СТ, ИФТ) уже пользуются системой, сконфигурировав ее под свои нужды.
• Настройки в XML, время обучения нового человека – 1 день.
• Изменение логики работы заглушки не требует экспертизы в написании кода.
• Запуск, конфигурация, остановка распределенных заглушек может проводится с управляющего хоста в 1 клик.
• Время разработки системы ~3 месяца.
Универсальная система заглушек для эмуляции банковских систем.
![Page 16: Универсальная система заглушек для эмуляции банковских систем](https://reader035.vdocuments.net/reader035/viewer/2022062320/55b3c0a3bb61ebf8508b45b8/html5/thumbnails/16.jpg)
Вопросы
?Универсальная система заглушек для эмуляции банковских систем.