Австралийская фондовая биржа (ASX) автоматизировала чуть более половины из 68 000 тестовых случаев, необходимых для обеспечения того, чтобы программное обеспечение, лежащее в основе финансовых рынков Австралии, оставалось надежным и функционировало должным образом.
Тестовый случай-это набор действий, выполняемых в системе для определения того, удовлетворяет ли она требованиям программного обеспечения и правильно ли функционирует.
ASX уже семь лет занимается автоматизацией тестовых случаев — путешествие, которое началось с Саймона Миллера — менеджера автоматизации тестирования ASX-и единственной копии QuickTest Professional (QTP).
QTP был первоначально разработан компанией Mercury Interactive, а затем приобретен HP, а затем и ее нынешним владельцем Micro Focus. Теперь он называется unified functional testing (UFT) и по-прежнему используется в ASX.
“Это был просто я, работающий на одной платформе с использованием QTP”, — сказал Миллер в интервью Micro Focus’ Realize 2020 ANZ virtual summit.
— Конечно, я делал все, что мог, но это может сделать только один человек. Там было много низкого покрытия.”
Перенесемся на семь лет вперед, и теперь команда из 29 человек “в настоящее время занимается автоматизацией тестирования в ASX, работая во всех наших доменах и нескольких приложениях”,-сказал он.
Существует также формальная программа обучения, которая использовалась для повышения квалификации существующей тестовой команды, и технические карьерные пути, чтобы предложить этим людям возможности для продвижения.
Повышение квалификации существующих сотрудников считалось важным, поскольку они обладали знаниями в области систем ASX.
“Очевидно, мы могли бы просто нанять всех 29 сотрудников по автоматизации тестирования и покончить с этим”, — сказал Миллер.
“Однако у нас есть много платформ, которые уникальны для среды exchange и которые вы не найдете за ее пределами.
“Многие наши тестировщики работали с ASX много-много лет и обладали большим знанием предметной области, и это очень важно для нас. Мы хотели убедиться, что ничего из этого не потеряем.”
Это также говорит об одной из целей внедрения более автоматизированного тестирования — повысить надежность критического программного обеспечения, лежащего в основе финансовых рынков Австралии, снизить риск более быстрого вывода на рынок новых функций и функций.
“Мы всегда ставим наших клиентов на первое место, и мы гарантируем, что наши системы и платформы используют новейшие технологии, чтобы обеспечить наилучший фокус для наших клиентов”, — сказал Миллер.
“Эти системы имеют решающее значение для австралийского финансового рынка и австралийской экономики в целом. Каждый месяц мы совершаем около 35 миллионов сделок только на нашей платформе для торговли акциями, так что вы можете понять некоторые цифры, которые мы проходим каждый день.
“Как любил говорить один из наших старых генеральных менеджеров, если рынок останавливается, это не только делает финансовые новости, но и фактически делает заголовки новостей.
“Это происходит не часто, что является важной частью того, что делает команда тестирования — обеспечение нашей последовательности и надежности, — но если мы потеряем одну из этих систем [и] должны будем остановить рынки, это потенциально может стоить миллионы финансовой экономике.”
Миллер сказал, что методы разработки программного обеспечения и тестирования в рамках ASX теперь тесно интегрированы, а автоматизация тестирования встроена в методы разработки, такие как непрерывная интеграция и непрерывная разработка exchange (CI/CD).
“Мы полностью внедрили тестирование в трубопроводы доставки и применили современные инженерные методы к нашим испытаниям”, — сказал Миллер.
Команды разработчиков и тестировщиков использовали многие из тех же инструментов и работали над единым набором руководящих принципов кодирования, которые применяются “во всей инженерии”.
“Все инженеры — то есть разработчики и тестировщики — используют одни и те же принципы кодирования для обеспечения согласованности. В конце концов, это все код, — сказал Миллер.
Чтобы двигаться быстрее, ASX также внедрила методологии Agile delivery и Scrum в свою разработку программного обеспечения.
Также этап автоматизации
Недавно биржа превысила 50 процентов своих тестовых случаев, будучи автоматизированной.
“У нас есть 56 процентов [автоматизированных], и это действительно объединилось за последние пару месяцев”, — сказал Миллер.
“Все идет вместе — у нас есть обучение, у нас есть позиции, у нас есть непрерывная доставка.
“Мы уже 30 лет строим тестовые случаи, так что у нас есть около 68 000 тестовых случаев, и более половины из них сейчас автоматизированы, что, как вы можете себе представить, отлично подходит для проведения нашего регрессионного тестирования. Я чувствую, что это только начало того, что мы можем сделать.”
Миллер сказал, что без автоматизации тестирования приложения могут занять месяцы для регрессионного тестирования.
“На некоторых системах, где у нас много автоматизации, это … теперь измеряется часами»,” сказал он.
“Как вы можете себе представить, это увеличило нашу скорость выхода на рынок. Поскольку они повторяются, и мы запускаем их каждый спринт, теперь у нас также есть надежность, и у нас меньше дефектов, идущих в производство.
“Системы должны быть надежными, потому что, как я сказал в самом начале, у нас есть миллионы сделок, проходящих каждый день, и бренд ASX работает, потому что это надежный бренд.
“Если у нас нет надежности, у людей есть возможность пойти в другое место. Они могли бы торговать на других рынках, что означало бы прямой вывод денег из австралийской экономики.
“Поэтому нам нужно убедиться, что все работает и имеет как можно более 100-процентное время безотказной работы на всех наших платформах.”
Миллер добавил, что его команда сейчас начинает тестировать методы поведенческой разработки (BDD) для автоматизированного тестирования, используя фреймворк и инструмент Cucumber.
«BDD в настоящее время находится на испытании по одному проекту»,” сказал он.