Похожие презентации:
Подготовка тестового окружения
1.
Онлайн-образование2.
Проверить, идет ли запись!3.
Меня хорошо видно && слышно?+ , если все хорошо
Ставьте
Напишите в чат, если есть проблемы
4.
Подготовка тестового окруженияфото
Вяземский Семён Валерьевич
QA Automation Lead
Beeline
svvyazemsky@gmail.com
5.
Правила вебинараАктивно участвуем
Задаем вопрос в чат или голосом
Off-topic обсуждаем в Slack #канал группы или #general
Вопросы вижу в чате, могу ответить не сразу
6.
Подготовка тестовогоокружения
7.
Где разворачивать тестовое окружение?Докер контейнер?
Виртуальная машина?
Физические сервера?
Комбинации, например докер контейнер на виртуальных машинах?
7
8.
Где хранить исходный код тестов?Вместе с продуктом?
Отдельно от продукта?
Все тесты вместе или системные отдельно, интеграционные и другие тоже отдельно?
8
9.
Где запускать тесты?В докер контейнере?
На хосте с продуктом?
На отдельном хосте?
Факторы влияющие на выбор:
1. Архитектура продукта
2. Виды проводимого тестирования
9
10.
Как устанавливать тесты?Из пакетов:
● pip
● deb, rpm
Из исходного кода:
● В докер контейнере
● На хосте
1
0
11.
Чем настраивать тестовое окружение?Инструменты управления конфигурациями?
Тестовым фреймворком?
Самописными скриптами?
1
1
12.
Сборка python пакетов13.
Когда необходимы python пакеты?Тесты разбиты на несколько проектов и есть необходимость импорта модулей одной части в другую, т.е. когда какая
то часть наших тестов должна стать библиотекой для другого пакета.
1
3
14.
SetuptoolsSetuptools - это набор улучшений дистрибутивов Python, которые позволяют разработчикам создавать и
распространять пакеты Python, особенно те, которые зависят от других пакетов.
1
4
15.
setup.pysetup.py скрипт сборки для setuptools. Говорит setuptools о имени и версии пакета, а так же какие файлы в нем
должны быть.
from setuptools import setup, find_packages
setup(name='otus-qa',
version='0.1',
url='https://github.com/misamoylov/otus-qa',
license='MIT',
author='Mikhail Samoylov',
author_email='mikhailsamoiloff@gmail.com',
description='Otus qa python code',
packages=find_packages(exclude=['tests']),
long_description=open('README.md').read(),
setup_requires=['pytest>=4.3.1'],
zip_safe=False)
1
5
16.
Аргументы методы setup()name – имя проекта
version – версия проекта
description – описание проекта
url – ссылка на проект, например на гитхаб
author – автор проекта
license – тип лицензии
classi ers – список информации о проекта, его назначении и т.п. (список классификаторов https://pypi.org/classi ers/)
keywords – список ключевых слов проекта
project_urls – список дополнительных URL о проекте. Это место для ссылок на трекеры , исходные репозитории или
где можно поддерживать разработку пакетов.
packages – список пакетов (директорий, которые содержат файл __init__.py)
install_requires – список зависимостей
python_requires – зависимость от версии питона
1
6
17.
Установка whlpip install some-package.whl
1
7
18.
Сборка deb пакетов19.
Когда необходимы пакеты зависимые от пакетногоменеджера?
• Сложный серверный продукт, например СУБД или веб-сервер, который должен работать под
управлением нескольких ОС.
• Тесты требуют дополнительную настройку операционной системы и свои конфигурационные файлы,
переменные окружения и т.п..
• Тесты представляют собой отдельный демон, который взаимодействует с тестируемой системой.
1
9
20.
FPMУстановка:
apt-get install ruby ruby-dev rubygems build-essential
gem install --no-ri --no-rdoc fpm
Использование
fpm -s python -t deb otus-qa/
2
0
21.
Слайд с домашним заданием1 Сборка wheel тестового фреймворка
22.
РефлексияОтметьте 3 пункта, которые вам
запомнились с вебинара
?
Что вы будете применять в работе
из сегодняшнего вебинара?
23.
Следующий вебинарТема: Основы безопасности веб-приложений
13.11.2019
Ссылка на вебинар будет в ЛК за 15 минут
Материалы к занятию
в ЛК — можно изучать
Обязательный
материал обозначен
красной лентой
24.
Список материалов для изученияhttps://packaging.python.org/tutorials/packaging-projects/
https://packaging.python.org/discussions/wheel-vs-egg/
https://code.tutsplus.com/tutorials/how-to-write-package-and-distribute-a-library-in-python--cms-28693
https://wiki.debian.org/BuildingTutorial
https://code.tutsplus.com/tutorials/how-to-write-your-own-python-packages--cms-26076
https://setuptools.readthedocs.io/en/latest/setuptools.html
https://packaging.python.org/
25.
Заполните, пожалуйста,опрос о занятии по ссылке в чате
26.
Спасибо за внимание!Приходите на следующие вебинары
Вяземский Семён Валерьевич
фото
фото
QA Automation Lead
Beeline
svvyazemsky@gmail.com