Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

Функциональное тестирование - тестируем функционально

1.346 Aufrufe

Veröffentlicht am

Презентация Татьяны Зинченко на SQA Days-16
14-15 ноября 2014, Санкт-Петербург, Россия
www.sqadays.com

Veröffentlicht in: Bildung
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Функциональное тестирование - тестируем функционально

  1. 1. Функциональное тестирование – тестируем функционально Солодов Владимир Luxoft
  2. 2. Немного лирики
  3. 3. Постановка задачи <data> <trader1 name='Solodov' from='Moscow'/> <trader2 name='Smith' from='London' /> <operation side='Buy' amount='1000' ccy='GBP' /> <product name='BMW Stocks' /> </data> <data> <version>1</version> <dates> <trading>2014-11-12</trading> <settlement>2014-11-12</settlement> </dates> <trader1 name='Solodov' from='Moscow' login=''/> <trader2 name='Smith' from='London' /> <operation side='Buy' amount='1000' ccy='GBP' brockerage='100' /> <product name='BMW Stocks' id='DE1245789012'/> <stock market='DAX' submarket='XET' /> <inventory>Bloomberg NYC</inventory> <coments> <coment1>This is the first trade</coment1> </coments> </data>
  4. 4. Анализ решения Много входных месседжей проходящих различные флоу Для синхронизации потребуются таймеры Потребуются заглушки для внешних систем Все должно синхронизироваться с реальной системой
  5. 5. Уточнение требований Все сообщения загружаются без проверки тестов Тесты должны писаться на каждый пункт спецификации В системе много статики, тесты должны проверять изменение статики Никаких заглушек не будет
  6. 6. Структура спецификации
  7. 7. Принцип тестирования 1 Не делаем End-To-End проверки. Проверям по принципу "Одна бизнес функция - один тесткейс".
  8. 8. Принцип тестирования 2 Организуем входные данные максимально изолировано друг от друга. Тест является отображением множество входных данных во множество выходных. Если последовательность важна, то она является входным параметром.
  9. 9. Структура системы Составление фазового портрета системы • Запуск входных сообщений • Агрегирование информации (логирование, сохранение в базе данных ) Верификация • Проверка полученного портрета системы на соответствие ожидаемому результату
  10. 10. Профит 1. Гранулярность тестов => тесты сваливаются, если в тестируемом функционале (а не рядом!) действительно были изменения 2. Тесты абсолютно точно показывают, где есть проблема 3. Значительно уменьшается зависимость от внешних систем 4. Система очень точно показывает покрытие функционала тестами 5. Можно писать тесты, которые предугадывают поведение системы при изменениях, тесты, которые недостижимы при нормальном флоу 6. Нет простоя при отправке входных данных следующего теста, связанного с ожиданием окончания предыдущего
  11. 11. Демонстрация и вопросы
  12. 12. Спасибо за внимание!

×