Git — распределённая система управления версиями, созданная для облегчения работы с изменяющейся информацией. Система управления версиями позволяет хранить несколько версий одного и того же документа, при необходимости возвращаться к более ранним версиям, определять, кто и когда сделал то или иное изменение, и многое другое.
Такие системы наиболее широко используются при разработке программного обеспечения для хранения исходных кодов разрабатываемой программы.
Довольно часто среди кода встречаются файлы, не предназначенные для хранения в Git: картинки, конфигурационные файлы, бинарные файлы и прочее. Правила для работы с такими файлами (а вернее - для их игнорирования системой Git) описываются в специально предназначенном для этого файле - gitignore.
Всем известно, что Лаборатория Качества, помимо тестирования, занимается вопросами QA аудита, экспертизы проектов и онлайн обучением. Но мы достаточно редко рассказываем о своих корпоративных оффлайн тренингах. Основная причина в том, что большинство наших клиентов не желает афишировать свою тягу к новым знаниям и разглашать факт проведения тренинга.
Благо, находятся и такие компании, которые достаточно долго существуют на рынке. Для них, вопросы периодического обучения своих кадров и повышение их квалификации является стандартной практикой и вполне естественным процессом развития, который не является тайной. К числу таких компаний относится один из 10 крупнейших банков страны – Промсвязьбанк.
Немного предыстории: есть старый проект, который пока что поддерживается, для который тестировался ранее исключительно вручную без какого-то ни было тест-плата - просто все подряд.
Для тестирования на тестовой площадке выкладывается новый релиз, который заменит в последствии текущую версию на бою. Т.е., тестовых данных там нет по определению. На этой же тестовой версии пишутся автотесты и, как вы уже догадались, чтобы что-то протестировать, приходится изощряться с подбором данных.
Например, есть поиск по базам данных. Есть автотест, который заполняет все поля формы и проверят, что поиск выполнен удачно. Критерием удачности здесь является: 1) появляется таблица с результатом; 2) таблица содержит данные в колонках. Но есть сложности: 1) БД обновляется и то, что выдавало результат раньше, с новым релизом может не выдавать ничего - тест фейлится; 2) Нет возможности проверить, что в таблице с результатом находятся все подходящие под критерии фильтра данные.
Или вот тесты с профилем. Подразумевается, чтобы тестировать чтото в профиле, нужно, чтобы этот профиль был. И сейчас мне приходится уповать на то, что тест по созданию профиля не упадет, тогда и тесты внутри профиля будут выполняться. А если упадет...
Параллельно сейчас делается версия проекта 2.0. Для нее хочется сделать все более-менее грамотно с организационной точки зрения. Я понимаю, что текущий подход неверен и крайне хрупок, тесты получаются зависимые друг от друга.
Я понимаю, что нужно тестировать, что с чем сравнивать, но у меня нет ожидаемого результата в виде заранее определенных данных в БД (профили, результаты поиска и т.п.). И вот здесь я подхожу к вопросу: вот у нас случился релиз, нужно перформить автотесты, есть площадка для тестирования. Она уже должна включать все необходимые тестовые данные? Или же она может быть развернута как и сейчас (копия боевой с улучшениями), но перед каждым тестом (где требуется наличие тестовых данных) мы делаем какой-то инжект в БД с нужными нам данными? Или как это вообще происходит по-правильному?
Для мержа используем гитлаб, там же делается сборка.
Для тестов используется связка Python (Pytest) + Selenium WD
Очень прошу не рекомендовать найти толкового спеца - вопрос не в этом, а в том, как наладить процесс самостоятельно в конкретном случае (=
Добрый вечер, такой вопрос. Есть Behave тесты, на которые нужно установить автозапуск через дженкинс. Сам дженкинс интегрирован с браузерстаком, и сами тесты запускаются и локально и удаленно через браузерстак.
Через плагин shiningpanda было установлено виртуальное окружение с локальной машины (на скрине), но вроде как сам плагин делает себе новое окружение, которое нужно сначала активировать.
При указании окружения в билде джобы дженкинса (на 2 скрине)
вылезает ошибка (на 3 скрине)
Если же не указывать окружение, а просто через Выполнить команду Shell попытаться запустить тесты как на локальной машине (скрин 4),
то он выдает ошибку (скрин 5)
Вопрос в следующем, это проблема с окружением, или неправильная команда запуска тестов?
Извиняюсь, что возможно написано так криво, в автоматизированном тестировании всего месяц, пока до конца все не понимаю.