Я разработал тестовую среду Blackbox в Python 3.2 для тестирования части оборудования. В этой среде у меня есть модуль TestExecution.py где я бегу моих тестов следующим образом:Выполнение и представление результатов при тестировании Blackbox
while(True):
TestWithRestart("Test122")
TestWithRestart("Test123",keys="invalid_keys.dat")
TestWithOneComPort("Test200", keys="invalid_keys.dat")
TestWithTwoComPorts("Test200")
TestWithTwoComPorts("Test200", ppc_simulation_script="Test200.pcc")
TestWithNoComPort()
TestTime("Test500")
Test600()
TestWithComPortNoise("Test600")
TestWithComPortInteruption("Test601")
Каждый тест аппаратного релиз I представлен на моем компьютере, по своей собственной папке Test Environment. Эта папка содержит журналы, ключи и TestExecution.py. Каждый тестовый пример имеет свою собственную папку результатов, и в этой папке у меня есть папки журналов для каждого запуска теста.
Возможно также, что мне нужно разработать новые тесты для нового выпуска оборудования. В этом случае это может предпринять многочисленные попытки, пока я не получу этот тест для правильной работы.
Что касается состояния прохождения/неудачи теста, я делаю это, вручную проверяя мои файлы журналов. Следующим улучшением будет автоматизация процесса установления, если тест прошел или нет. Для этого я напишу отдельные классы. Этот процесс будет продолжаться.
Мне интересно, могу ли я интегрировать свою среду с программным обеспечением непрерывной интеграции, чтобы представить как выполнение теста, так и/или результаты в красивой графической форме. Также было бы неплохо выбрать те тесты, которые я хочу выполнить. Какое программное обеспечение с открытым исходным кодом вы порекомендуете?
Спасибо,
Barry
Какие плагины Jenkins следует использовать? – Baz
Спасибо! Правильно ли я говорю, что я должен запускать свои тесты с помощью шага Python Plugin Build? – Baz
Не обязательно: вы можете начать с запуска скриптов в «Execute Shell» (или использовать Ant, если вам удобно с ним). Посмотрите, как далеко он вас достает.Я никогда не использовал плагин Python, поэтому я не могу ручаться за него. Я называю Python (включая API Wrapper) из shell/Ant. –