Здравствуйте! Я только начал знакомиться с автоматизированным тестированием и худо-бедно дело движется вперед. Только не смог найти в интернете инфы насчет генерации отчетов о пройденных тестах.
Я использую WD + Python. Хочу поставить запуск по расписанию. Чем лучше всего генерить отчеты и как их смотреть? Попробовал HTMLTestRunner, но так и не удалось получить файл на выходе.
И еще подскажите, плз, самый верный способ запустить эти тесты по графику. Или хотя-бы в какую сторону рыть?
самый лучший способ для вас будет Jenkins http://jenkins-ci.org/, один выстрелом два зайца убьете
там можно настроить регулярный запуск по разным параметрам, которые вам нужно, например, каждый день, или по изменению файлов на файловой структуре или по изменению код в системе версионнонго контроля
и второе, вы можете геренировать junit xml репорты, и указывать их для своего билда, а сам jenkins уже по ним построит отчеты, вам 100% должно хватить
Очень интересна тема Jenkins + Python + SeleniumWD, т.к. занимаюсь этим относительно недавно-очень инетересно как настроить и подружить этих ребят? Может кто-нибудь рассказать подробнее?
Описание того, что есть: есть скрипты на python+WD, установленый(не настроеный Дженкинс).
Нужно: запускать скрипты по расписанию, или после изменения кода, получать отчет о выполенини скриптов(passwd/failed), делать рассылку на почты.
py.test или nose имеют встроенные возможности генерировать junitreport xml файлы на выходе
Все тесты кладем в какой-то репозиторий
Устанавливаем дженкинс и все пакеты python на той машине, где будут проганяться тесты
Создаем билд план и в настройках запуска указываем все те же команды py.test или nose, а выходных результатах указываем, где будет хранится будущий junitreport xml файл.
Да в принципе вот и все
Если будут более конкретные вопросы, с радостью помогу!
Скажу лично от себя: мне очень нравится данное так сказать дополнение. Очень удобно, наглядно. Правда проект уже можно сказать мертвый, последний коммит был 2 года назад. Но! в текущем состоянии он рабочий, даже очень. Но некоторые допилы делал лично, под нужды проекта.
Использование очень легкое, пример:
import unittest
import HTMLTestRunner
import time
class TestFunctions(unittest.TestCase):
def test_test1(self):
pass
def test_test2(self):
pass
if __name__ == '__main__':
suite = unittest.TestSuite()
suite.addTest(unittest.makeSuite(TestFunctions))
dateTimeStamp = time.strftime('%Y%m%d_%H_%M_%S')
buf = file("TestReport" + "_" + dateTimeStamp + ".html", 'wb')
runner = HTMLTestRunner.HTMLTestRunner(
stream=buf,
title='Test the Report', # Заголовок отчета
description='Result of tests' # Описание отчета
)
runner.run(suite)
UPD. Прошу прощения, сразу не заметил, что автор пробовал использовать данный метод. Если желаете, то смогу подсказать/помочь, т.к. активно использую HTMLTestRunner
UPD2. И только сейчас заметил дату первого поста. Простите, утро, не совсем внимателен
Вновь принялся за настройку Jenkins, сейчас застрял на процессе запуска команды py.test.
Что есть:
тесты на python + selenium WD + py.test. Из eclipse или просто из консоли все работает.
тесты в репозитории, там же в корне лежит xml, сгенерированная py.test’ом
плагины поставил такие: Jenkins Selenium Plugin, Python Plugin
настройки Job:
Ошибка при сборке такая:
Путь к интерпретатору пытался ручками прописать и оставить пустым, результат тот же. Зашел под юзером jenkins, запустил терминал, ввел py.test - запустился, работает.
Такое ощущение, что python нет в системных путях.
Для того, чтобы проверить.
Попробуйте добавить папку python и python\scripts в системные пути, как шаг в дженкинсе.
Или же укажите полный путь к исполняемому файлу py.test
Как вы устанавливали py.test на сервер, где стоит jenkins?