Найти тему
Запуск тестов в Python из командной строки Terminal
⚠️Использую IDE PyCharm / браузер Chrome Тестирование можно запустить из командной строки интерпретатора Python, используя шаблон: python -m pytest [...] В отличие от запуска напрямую командой: pytest [...], запуск через Python добавляет текущий каталог в sys.path, т.е. позволяет импортировать оттуда модули. 👀 Основная причина, по которой используют запуск через Python, а не через pytest, заключается в том, что псевдоним pytest в вашей локальной среде может указывать на установку, отличную от той, которую вы ожидаете! Например, pytest установлен для Python2, когда вы ожидаете Python3 – т.е. запуск...
210 читали · 1 год назад
Что должен знать и уметь Junior Python Tester?
Рекомендации даны для желающих заниматься, как web-разработкой, так и тестированием на Python. Плюс я указал ряд полезных ссылок на эту тему… ✔️По умолчанию: знание ручного тестирования + техники тест-дизайна; ✔️Сам Python + понимание объектно-ориентированного программирования; ✔️Реляционные БД (PostreSQL и/или MySQL); ✔️Linux (работа в консоли, основы администрирования, nginx) - разработчик должен уметь настроить рабочее окружение, а тестировщик должен уметь работать в этой среде; ✔️IDE или редактор кода (для тестировщиков - Pycharm, разработчиков - Sublime Text 2, VIM, EMACS); ✔️GitHub; ✔️GitLab ✔️Allure...
105 читали · 1 год назад
Файл: __init__.py
Если в тест добавить функцию, которая импортирует запрос к API через какой-нибудь класс (допустим PetFriends), например, из файла api в папке app: ⚡️from app.api import PetFriends⚡️- то товарищ Selenium будет ругаться: 🚫ERROR: not found: ... ✅Задачка решается добавлением пустого файла с именем: __init__.py в папку с тестами. 🔥 Файлы __init__.py необходимы, для того, чтобы Python рассматривал текущую директорию, как пакет. Это делается для того, чтобы предотвратить директории с общим именем, например string, от непреднамеренного скрытия допустимых модулей, которые происходят позже на пути поиска модуля...
1 год назад
Закодированная кириллица
По умолчанию Pytest экранирует любые не ASCII-символы, которые используются в строках unicode для параметризации, т.е. на выходе можем получить закодированную кириллицу типа: u041a/u043e/u0440/. Для того, чтобы использовать строки unicode в параметризации и видеть их в Terminal, как есть (без экранирования), нужно прописать в файле pytest.ini следующее: [pytest] disable_test_id_escaping_and_forfeit_all_rights_to_community_support = True Сам файл pytest...
1 год назад
Генерация случайных валидных учётных данных: name, email, password
Необходима установка библиотеки Faker: ⚡️pip install Faker⚡️ Это удобная и простая штука, которая предоставляет широкие возможности для генерации фиктивных данных 😎 Сам код: from faker import Faker fake = Faker() class RegisterUser: @staticmethod def random(): name = fake.name() email = fake.email() passw = fake.password() return {"name": name, "email": email, "password": passw} print(RegisterUser...
1 год назад
Формат вывода числовых значений
Начнём пожалуй с формата вывода числовых значений в Python 👍🔟 Следующая функция позволяет выводить значения в формате типа: 5 545.80 // 5 545 // 5545 и т.п. При этом разрядность регулируется через изменение значения "1.00" => "1.0" // "1" Разделитель тысячных регулируется здесь: replace(',', ' ') => во вторых кавычках. ⚠️Для воспроизведения функции, нужно импортировать библиотеку: Decimal Сам код: from decimal import Decimal, ROUND_HALF_UP def numformat(num): # num = num...
1 год назад