Введение в Автоматизацию. Урок 1
Настройка окружения и установка необходимых библиотек.
В самом начале мы должны поговорить об одной очень важной детали: Что такое виртуальное окружение?
Представьте что мы режем мясо, овощи, рыбу на одной доске. Выглядит не очень аппетитно. Предлагаю использовать разные доски для каждого продукта. В нашем случае мы должны использовать виртуальные окружения.
Виртуальное окружение - это изолированное окружение среды (в нашем случае это окружение Python), которое позволяет нам использовать определенные версии приложений.
Виртуальное окружение необходимо для использования различных версий библиотек на одном компьютере.
Например: Мы пришли на проект в котором используется 3 версия selenium. Мы немного подумали и решили взять 2 проект, но в нем используется уже 4 версия селениум. Как нам поставить 2 разные версии селениум на наш компьютер и не выстрелить в ногу? Мы можем положить каждую версию в отдельную коробочку которая как раз таки и будет являться виртуальным окружением.
Команды для создания виртуального окружения
MacOs
python3 -m venv venv #создание виртуального окружения
source venv/bin/activate #активация виртуального окружения
Windows
В windows мы можем использовать утилиту virtualenv virtualenv — утилита для создания виртуальных окружений.
Для установки виртуального окружения:
pip install virtualenv
Для создания виртуального окружения: virtualenv <имя виртуального окружения>
Пример:
virtualenv venv
В текущем каталоге будет создана новая директория с указанным вами названием, куда будут перенесены python, pip и в дальнейшем установлены другие библиотеки. Активация виртуального окружения:
<имя виртуального окружения>\Scripts\activate
Для деактивации виртуального окружения:
deactivate
Далее переходим к установке необходимых библиотек.
Для установки необходимых библиотек в python используется pip PIP — это менеджер для библиотек Python или модулей. Примечание: Если вы используете версию Python 3.4 и более позднюю, PIP уже установлен по умолчанию
Проверка версии pip
pip --version
Установка необходимых библиотек Откройте командную строку и напишите pip НАЗВАНИЕ БИБЛИОТЕКИ, чтобы загрузить нужную. Скачаем пакет “faker”:
pip install faker
Использование библиотек. Как только библиотека будет установлена, она готова к использованию. Импортируйте faker в свой проект.Библиотека faker используется для генерации рандомных данных. Думаю она может пригодиться вам в последующей работе Пример:
from faker import Faker #импортируем Faker
fake = Faker() #создаем обьект класса Faker
print(fake.name()) #выводим на экран сгенерированное имя
print(fake.email()) #выводим на экран сгенерированный email
Поиск необходимых библиотек Найдите больше библиотек здесь: https://pypi.org/.
В нашем случае нам необходимо установить pytest, для этого необходимо выполнить следующие команды
MacOs
pip3 install pytest
Windows
pip install pytest
Далее перейдем к файлу requirements.txt Для чего используется файл requirements.txt?
Файл requirements.txt используется для фиксации используемых в проекте библиотек и их версий. Например: вы разработали некоторый скрипт для автоматизации и выложили его в Github. На вашем компьютере присутствует Selenium для его запуска, но вдруг у того кто клонировал ваш репозиторий не установлена нужная библиотека с нужной версией. Для того чтобы избежать таких ситуаций используется requirements.txt.
Принцип работы:
Вы работаете над проектом. Устанавливаете нужные версии библиотек. Переносите эти библиотеки в requirements.txt командой:
MacOS
pip3 freeze > requirements.txt
Windows
pip freeze > requirements.txt
Выкладываете ваш проект на сайт Github Другой человек клонирует ваш проект. Создает виртуальное окружение. Устанавливает все необходимые зависимости командой:
MacOs
pip3 install -r requirements.txt
Windows
python -m pip install -r requirements.txt
Предлагаю перейти ко второй части нашего урока! Установим Selenium и напишем небольшой автотест
Что же такое Selenium?
Selenium – это инструмент для автоматизированного управления браузерами. Selenium часто используется для автоматизации тестирования веб-приложений. Однако при помощи Selenium можно автоматизировать любые рутинные действия, выполняемые через браузер.
Что нам нужно установить для успешного запуска скрипта Selenium?
- Клиентская библиотека
- Драйвер браузера (сейчас устанавливается автоматически)
- Браузер
В общем, когда вы пишете тест на, скажем, Python, используя Selenium WebDriver, ваш код отправляет команды драйверу соответствующего браузера (например, ChromeDriver для Chrome), который в свою очередь управляет реальным браузером. Современная архитектура Selenium WebDriver также интегрирована с W3C WebDriver протоколом, который стандартизирует обмен сообщениями между клиентскими библиотеками и драйверами браузеров.
Устанавливаем Selenium и переходим к импортам. Документация Selenium: (https://www.selenium.dev/documentation/webdriver/)
Инструкция по написанию первого теста: (https://www.selenium.dev/documentation/webdriver/getting_started/first_script/)
Что такое пакет в Python? (https://docs.python.org/3/tutorial/modules.html#packages)
Репозиторий с кодом урока: (https://github.com/victoretc/selenium_automation_course/tree/main/lesson1)
В Readme.md можно найти домашнее задание.