Daria Chernishova Test Automation Story
-
Upload
automated-testinginfo -
Category
Documents
-
view
829 -
download
6
Transcript of Daria Chernishova Test Automation Story
![Page 1: Daria Chernishova Test Automation Story](https://reader034.fdocuments.net/reader034/viewer/2022052507/557ed6d3d8b42a815a8b49df/html5/thumbnails/1.jpg)
A U T O M AT E D -T E S T I N G . I N F O
Мой опыт автоматизации,
или проект с нуля
Дарья Чернышёва2012
![Page 2: Daria Chernishova Test Automation Story](https://reader034.fdocuments.net/reader034/viewer/2022052507/557ed6d3d8b42a815a8b49df/html5/thumbnails/2.jpg)
A U T O M AT E D -T E S T I N G . I N F O
О себе
• QA с 2009, Automation QA с 2011.• Перебежчик из вражеского стана:
в прошлом Java Developer.• Инструментарий: Java, Ruby,
Borland SilkTest.• Место работы: Компания EPAM,
проект Thomson Reuters.• Личная информация: барабанщик, граммар-наци, Android-гик,
бла-бла-бла, никому не интересно.
2
![Page 3: Daria Chernishova Test Automation Story](https://reader034.fdocuments.net/reader034/viewer/2022052507/557ed6d3d8b42a815a8b49df/html5/thumbnails/3.jpg)
A U T O M AT E D -T E S T I N G . I N F O
Зачем Dev уходят в QA?
• Проявляем перфекционизм.• Делаем мир лучше.• …идём куда пошлют.
3
![Page 4: Daria Chernishova Test Automation Story](https://reader034.fdocuments.net/reader034/viewer/2022052507/557ed6d3d8b42a815a8b49df/html5/thumbnails/4.jpg)
A U T O M AT E D -T E S T I N G . I N F O
Java
Тестируемый проект
4
Новость (XML-
документ или бинарный
файл)
FTP-сервер
Пациент
жив?
Валидатор
Помойка
Файло-
хранилище
База (MySQL)
Новостные каналы
![Page 5: Daria Chernishova Test Automation Story](https://reader034.fdocuments.net/reader034/viewer/2022052507/557ed6d3d8b42a815a8b49df/html5/thumbnails/5.jpg)
A U T O M AT E D -T E S T I N G . I N F O
Дано:
Это ужасно.
5
![Page 6: Daria Chernishova Test Automation Story](https://reader034.fdocuments.net/reader034/viewer/2022052507/557ed6d3d8b42a815a8b49df/html5/thumbnails/6.jpg)
A U T O M AT E D -T E S T I N G . I N F O
Решение: новый проект
Устранение хард-кода.
Создание системы повторно используемых функций.
Уменьшение времени выполнения тестов.
Обеспечение масштабируемости.
6
![Page 7: Daria Chernishova Test Automation Story](https://reader034.fdocuments.net/reader034/viewer/2022052507/557ed6d3d8b42a815a8b49df/html5/thumbnails/7.jpg)
A U T O M AT E D -T E S T I N G . I N F O
Реализация: шаг 1.1
Базовые функции:• работа с окружением и тестовыми данными
7
Project
XML
DB (MySQL
)
parse /
update
connect / query
Remote file
server
upload / download
![Page 8: Daria Chernishova Test Automation Story](https://reader034.fdocuments.net/reader034/viewer/2022052507/557ed6d3d8b42a815a8b49df/html5/thumbnails/8.jpg)
A U T O M AT E D -T E S T I N G . I N F O
Project:
Реализация: шаг 1.2
8
case/suite setup/teardown
test data folder structure
configuration files
Базовые функции:• работа со структурой проекта
![Page 9: Daria Chernishova Test Automation Story](https://reader034.fdocuments.net/reader034/viewer/2022052507/557ed6d3d8b42a815a8b49df/html5/thumbnails/9.jpg)
A U T O M AT E D -T E S T I N G . I N F O
Реализация: шаг 2
9
Создать файл по шаблону
Обновить файл Подключиться к серверу и
базе
Проверить выходные
данные
Найти результат
Загрузить файл
Первородные тест-кейсы:
![Page 10: Daria Chernishova Test Automation Story](https://reader034.fdocuments.net/reader034/viewer/2022052507/557ed6d3d8b42a815a8b49df/html5/thumbnails/10.jpg)
A U T O M AT E D -T E S T I N G . I N F O
Реализация: шаг 3
Промежуточный уровень функций:
инициализация ftp + отправка на сервер;
поиск файла в базе + скачивание;
скачивание + проверка структуры файла
10
![Page 11: Daria Chernishova Test Automation Story](https://reader034.fdocuments.net/reader034/viewer/2022052507/557ed6d3d8b42a815a8b49df/html5/thumbnails/11.jpg)
A U T O M AT E D -T E S T I N G . I N F O
Реализация: шаг 4
11
db_utils
ftp_utils
xml_updater File VS DB
Validator:1) parse xml2) query db3) compare
results
Test Item Management:1) get original file2) get resulting file3) get log file4) run validation
Распределение функций промежуточного уровня по модулям и классам
![Page 12: Daria Chernishova Test Automation Story](https://reader034.fdocuments.net/reader034/viewer/2022052507/557ed6d3d8b42a815a8b49df/html5/thumbnails/12.jpg)
A U T O M AT E D -T E S T I N G . I N F O
Реализация: шаг N• Пересмотр старых функций:
– рефакторинг;– сокращение количества подобных функций;
• Добавление нового функционала:– шаг 2 (первичные тест-кейсы);– шаг 3 (выделение функций промежуточного уровня).
12
method_type :testcase test_tags "positive" def verify_random_opt_against_db
profile = 'SNEP-External' news_item = NewsItemEntity.newnews_item.create_from_random_opt(profile)snep_news_item.run_news_message_structure_validationsnep_news_item.run_nml2_to_db_validation end
Это делается постоянно:
Так выглядит типичный кейс:
![Page 13: Daria Chernishova Test Automation Story](https://reader034.fdocuments.net/reader034/viewer/2022052507/557ed6d3d8b42a815a8b49df/html5/thumbnails/13.jpg)
A U T O M AT E D -T E S T I N G . I N F O
Это всё, можно выдыхать
Спасибо за внимание!
13