Если задуматься, для каких российских компаний тестирование может быть особенно хардкорной задачей, в голову сразу приходят Сбербанк-Технологии. Во-первых, там гигантские масштабы, во-вторых, большая ответственность (финансовые операции — это вам не фотошеринг с геолокацией), в-третьих, взят курс на максимально быстрый релизный цикл: то есть тестировать нужно очень много, очень качественно и при этом очень быстро.

Каково живётся с такими почти взаимоисключающими установками? По следам конференции Гейзенбаг, где компания была спонсором, мы задали несколько вопросов Антону Романову из её Департамента качества — заместителю начальника отдела тестирования корпоративно-кредитных систем.

— До Сбербанк-Технологий вы работали в компании «Аплана», где тоже занимались тестированием систем Сбербанка, но со стороны внешнего подрядчика. А как вообще в Сбертехе делят задачи по тестированию между самой компанией и подрядчиками?

— Исторически подрядчики сначала привлекались в основном для регрессионного тестирования. И я работал в «Аплане» как раз тогда, когда на подряд передавалось преимущественно регрессионное тестирование, а Сбертех контролировал. А сейчас по мере увеличения объема работ, подрядчики привлекаются в том числе и для тестирования новых проектов.

— Всем очевидно, что Сбербанк-Технологии — большая компания, а можете ли с помощью каких-либо чисел дать представление, насколько именно большая в отношении тестирования?

— В Департаменте качества работает около 1 500 человек, это 38 отделов.Получается около пяти управлений, которые делятся по функциональным компетенциям: Управление нагрузочного тестирования, Управление тестирования автоматизированных банковских систем, Управление тестирования фронтальных систем, Управление администрирования. И в каждом управлении где-то по пять отделов.

— Когда так много отделов, становится интересно: насколько это всё унифицировано? У вас в тестировании внедрены строгие единые стандарты, которым подчиняется каждый, или у отделов есть высокая степень автономии?

— Я бы сказал, у нас золотая середина. Например, отдел организации тестирования задает некие направляющие практики. Для них определены критерии, которые выполняются или не выполняются при определенных условиях (тестирование на ранних этапах, согласование своих тестов с аналитиками и т.д.). То есть команды работают по общему набору правил, но в зависимости от особенностей системы и процесса разработки команда самостоятельно определяет, какие практики применимы и как они будут реализованы.

Естественно, процессы прозрачны и открыты: с активной обратной связью, согласованием и пониманием рабочих процессов.

— А может ли команда использовать какие-то новаторские практики, ещё не ставшие мейнстримом, или в вашем случае всегда требуются проверенные временем?

— Конечно, нам нужна надёжность, но это не означает, что нельзя работать с чем-то новым. Например, mind maps (ментальные карты) до недавнего времени считались новаторской практикой. Мы их используем, но в качестве дополнительного инструмента. А использование только mind maps взамен любой другой тестовой документации, конечно, не допускается. Таким образом, используя что-то новое, мы просчитываем и нивелируем риски, часто проводим подобные тестирования в пилотном режиме. И только если мы видим эффективность и результат, такие решения практикуются и тиражируются.

— Правильно ли понимаем со стороны, что высокая ответственность финансовых операций сказывается на подходе к тестированию?

— Там, где дело касается денег, есть огромная ответственность — и безусловно, это сказывается на наших подходах к тестированию. Процесс достаточно строгий, с несколькими этапами согласования — передача от разработки на тестирование, от системного тестирования на интеграционное тестирование, от интеграционного тестирования на приемку. То есть всё несколько раз перепроверяется, есть строгие критерии передачи такого дистрибутива, обязательно контролируется выполнение регрессионного тестирования и качество тестирования новой функциональности.

— А ещё, вероятно, в вашем случае нагрузочное тестирование особенно важно?

— Да, это так. Для примера: в Сбербанке порядка 150 различных систем, взаимодействующих между собой. На наш отдел приходится одна большая система, в которую за один операционный день поступает примерно по 500 платежных документов в секунду. Соответственно, объем на один территориальный банк составляет порядка четырех миллионов документов в день. Это и платежи клиентам, и налоговые и коммунальные платежи — масса всего.

Таким образом, нагрузочное тестирование несёт очень важную роль, потому что для Сбербанка критично время обработки этих документов — они не должны скапливаться в очередях и тормозить банковские операции. Мы уделяем большое внимание тому, как система ведет себя после наката очередных обновлений — очень важно, чтобы уровень сервиса не проседал. Поэтому в нагрузочном тестировании мы стараемся создавать среду, которая максимально соответствует промышленной.

— При этом у вас гигантские объёмы уже написанного кода, что должно усложнять регрессионное тестирование, и в то же время стоит цель максимально ускорить релизы. Что помогает справиться с таким вызовом?

— Помогают старые добрые практики — тестирование, основанное на рисках.

Система, которую мы тестируем, перешла к нам по наследству: её изначально разрабатывала сторонняя компания. Документация осталась где-то на уровне семилетней давности, а новые изменения были разрозненно задокументированы в разных местах. То есть первая задача — понять, что, где и как работает.

А следующий момент — объёмы. В этой системе порядка 15 000 операций, в нее стекаются все платежи — и бухгалтерская отчётность, и проводки, и вообще всё. У наших релизов сжатые сроки (порядка двух недель на всё), поэтому важно определить, что проверять в первую и вторую очередь, и в каком объеме. Определяя приоритеты, мы привлекаем коллеги из разработки, сопровождения и Сбербанка — ведем с заинтересованными лицами всесторонний диалог.

Очень важно автоматизировать процессы и таким образом сэкономить время. Но всё равно остаются проверки, которые можно сделать только вручную, и здесь мы применяем Lead-Time метрику (имеется в виду время от начала до завершения регресса) — время, которое требуется на выполнение регрессионного тестирования. Мы используем данные о времени выполнения тестов, которые хранятся у нас в инструменте, и на основе этого оцениваем, сколько времени нам потребуется на выполнение регресса, сравниваем это же время с расчётом через дату, просто дата окончания — дата завершения (два метода расчета — через фактические даты завершения и начала и через объем тестов и среднее время выполнения; пока что “факт” превышает расчетное значение). Пока у нас есть различия и мы думаем, как сократить время на выполнение отдельных тестов.

— Про компанию масштаба Сбертеха кажется, что в такой должно быть много разработанных внутри инструментов — вы в вашей работе с такими сталкиваетесь?

— Смотря о чём именно говорить: собственной JIRA у нас нет, но разрабатывается много утилит под отдельные нужды тестирования. Например, создание специальных сообщений в определённом формате, генераторы тестовых данных, очень распространены SQL-скрипты.

— Ранее Сбертех сообщал, что в Департаменте качества внедряют DevOps — а что это означает на практике для вашего отдела?

— С приходом девопса появляются такие практики, как Continuous Integration и Continuous Deployment. В отделе, где я работаю, их пока нет, потому что наша система относится к классу legacy, которая будет заменяться новой платформой (ее разрабатывают уже как веб-приложение). Но коллеги из других отделов уже работают в DevOps, что реально экономит время и ускоряет весь процесс. Потому что все собирается автоматически, накатывается и запускается ночью, а тебе остается только утром посмотреть результаты.

— Про Сбертех известно, что он активно нанимает разработчиков — а в тестировании тоже постоянно привлекаете новых людей?

— Сейчас активно разрабатывается новая ИТ платформа Сбербанка, которая будет совмещать в себе большое количество систем, существующие сейчас по отдельности. Это будет единая платформа, состоящая из большого количества модулей, которые будут выполнять отдельные функции. Но параллельно мы обрабатываем заявки по существующим системам. Поэтому конечно нам нужны люди для выполнения этой реально масштабной задачи.

Вы сертифицированный тестировщик вплоть до уровня ISTQB Full Advanced — а насколько сказываются в Сбертехе и полученные знания, и сам факт получения сертификата?

— В моей работе эти знания очень полезны. Часто бывают какие-то задачи из серии «проектируется какой-то бизнес-процесс, нужно оценить каким-то образом количество тестов, чтобы примерно спланировать работы, примерно понимать, какой будет объем регресса». Вот здесь нужны методы тест-дизайна, которые рассматриваются в ISTQB. Они помогают, имея даже не очень подробную документацию и основываясь на предположениях о существующих рисках и о критериях качества, определить возможный объем — может быть, не в терминах тестов, но в терминах проверок.

Также стратегия, основанная на рисках, очень применима к нашей регрессионной модели. Как оценить риски, как их приоритезировать, кого к этому привлечь — это всё очень полезно и не раз помогало мне в работе. Ну и в целом, как мне кажется, получаемые при подготовке к сертификации знания определяют дальнейший подход к работе. В голове постепенно укладывается установка, что нельзя протестировать всё: нужно исходить из рисков, расставлять приоритеты и обеспечивать максимальное качество при имеющихся ресурсах. С таким подходом к решению задач получается совершенно другой результат.
Поделиться с друзьями
-->

Комментарии (18)


  1. Elufimov
    30.06.2017 15:30

    В Департаменте качества работает около 1 500 человек

    Я конечно извиняюсь, но тут нет ошибки? Что делают все эти люди?


    1. phillennium
      30.06.2017 15:49
      +2

      Могу уточнить у интервьюируемого, но предполагаю, что ошибки нет, из-за ряда факторов. У Сбертеха:
      — высока цена ошибки, поэтому тестировать надо тщательно
      — очень много аспектов тестирования, на которые забивают многие компании (нагрузка, безопасность и прочее)
      — много внутренних продуктов, которые для нас незаметны, а при этом тоже требуют тестирования
      — огромный масштаб организации (один из самых крупных банков в мире)


      1. MrPeterLink
        30.06.2017 17:17
        +2

        Да, пусть интервьюируемый сфотографирует цех тестирования приложений платежных терминалов, где их люди руками тестируют в 21 веке.


      1. Varkus
        02.07.2017 13:38
        +1

        И все эти люди не могут найти очевидную чушь в Бизнес-онлайн:
        у оператора зачесалась левая пятка и он заблокировал мою симкарту. Пришел в офис, там говорят: симка «устала». И выдали мне новую. Захожу в кабинет, а подписать ничего не могу: симка сменилась, топайте в отделение и пишите заявление(Блокчейн, бигдата, эджайл… Привет, Греф) ИЛИ Вы можете оформить заявление в этом же кабинете.
        Ок, оформляю это заявление И… (барабанная дробь!!!) не могу его подписать, потому что симка сменилась.
        Это рукалицо измазанное в фэйпалмовом масле, товарищи :(


        1. Varkus
          07.07.2017 05:40

          И еще туда же, к кое-какерам «тестеровщикам»:
          в онлайн кабинете оформляешь заявку на кредит, тебе тут же её предварительно одобряют(вот прямо здесь начинается ложь и лицемерие того кто эту логику придумал, привет Греф, опять), но нужно всё равно ТОПАТЬ в отделение и принести все документы, что уже заполнил. На следующий день позвонила девушка и пригласила с доками в отделение: и копию трудовой возьмите, — сказала она.
          — А без неё никак, может трудового договора хватит?
          — Да, берите его и скорее приходите

          Пришёл: без трудовой даже нет смысла начинать оформлять, — говорит оператор.
          Ухмыльнулся, почесал затылок: это же сбер!!! и на что я тока надеялся, опять как лошару гоняют туда сюда :)
          Через пару дней принёс всё, что надо, оформились. Очень рекомендовали им свою пенсию для накопления перевести, ну Ок, а что я собственно теряю, кроме того что это стоит 1000руб. и теперь помимо налогов в пенсионный фонд я еще ОБЯЗАН минимум 500р в месяц отправлять в сбер, опять же на будущую мифическую пенсию.
          — Вам смс с решением придёт
          — Ок
          Весь день прождал смс, а потом решил заглянуть в онлайн: отказ как неблагонадёжному.
          Смс так никогда и не пришла.

          Ну Ок, попробую еще раз, тока сумма в 2 раза меньше, но и срок тоже ставлю в 2 раза меньше.
          Всё заполняю, звонит девушка с приглашением в отделение, принёс все бумаги, сажусь к оператору:
          — А что Вы пришли? Следующая попытка только через 2 месяца, у меня даже оформить Вас не получится: ПРОГРАММА НЕ ПРОПУСТИТ, до свидания.

          НУ ПЛЯ КАК ТАК-ТО??? почему программа у девушки знает про 2 МЕСЯЦА, а онлайн кабинет НЕТ?

          Чем все эти тестеры занимаются? Спинер на х… вертят?


    1. saege5b
      30.06.2017 21:12
      +1

      Дурью маются.
      Весной при переводе карта-карта с тинькова на сбер, смс приходила с неправильным временем внутри.
      Забыли и забили на смещение.


      1. Elufimov
        30.06.2017 21:16
        +1

        Оно на прошлой неделе так же работало. Мы посмеялись о том что сбер изобрёл машину времени.


    1. kriwsha
      01.07.2017 00:33

      Я работал одно время в Аплане на проекте сбера. На нашем проекте было порядка 20 ручных тестировщиков, 5-6 автоматизаторов от апланы и еще команда автоматизаторов самого сбера примерно человек 10, находящаяся не в москве. К тому же я как понимаю к департаменту качества относятся не только тестировщики, но и администраторы тестовых стендов, аналитики и прочее. Помимо апланы там еще куча других подрядчиков типа айтеко. А как сказал автор статьи, там много внутренних систем, интегрированных в одну общую. Так что цифра вполне адекватная


  1. Nikolaus
    30.06.2017 16:45
    +1

    от системного тестирования на интеграционное тестирование, от интеграционного тестирования на приемку

    Системные тестирование проводится перед интеграционным, а модульное не проводится вовсе?


  1. wielski
    30.06.2017 16:46
    +4

    Не мне судить, но что делают все эти 1500 человек, если половину серверов сбербанка можно положить заменой одного параметра в «очень секретном» API для внутреннего использования?


    1. Ruddymetor
      30.06.2017 17:05

      пожалуй, +1 к вопросу


      1. aidarchikable
        30.06.2017 18:10

        А я примерно представляю что. Тестирование это не только нахождение багов но и умение продавать их владельцу продукта. Вполне возможна такая ситуация что баг был найден, но тестировщик не смог продать его и баг попал в трекер с низким приоритетом (ну т.е. он никогда не исправится). А всё потому что владелец продукта посчитал что внутреннее API никто никогда ломать не будет, ведь для этого нанят огромный штат эксплуатации и поддержки внутренних систем.


        1. kentilini
          30.06.2017 21:02

          Задача тестировщика не продавать баги, а находить и заводить:)

          p.s.
          а если мало платят — продавать баги конкурентам.


    1. m8rge
      30.06.2017 18:10
      +1

      Я не отношусь ни к автору текста, ни к сбертеху, но

      Сейчас активно разрабатывается новая ИТ платформа Сбербанка


      По-моему, тестируют именно ее.


    1. kidar2
      30.06.2017 18:14
      -5

      Едят наши налоги


  1. Varkus
    01.07.2017 15:31

    мы задали несколько вопросов Антону Романову из её Департамента качества

    5 раз перечитал, из кого ЕЁ?


    1. furtaev
      01.07.2017 15:51

      … где компания была спонсором..

      ЕЁ, компании


  1. ambientos
    01.07.2017 17:03

    «Важно расставлять приоритеты»: image

    Не? Не.