Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Codeception/robo-paracept создание и мерж html репортов

codeception
Теги: #<Tag:0x00007f7b65e81a38>

(Tim Moiseev) #1

Здравствуйте. Т.к. тестов скопилось очень много, решил расспаралелить их с помощю Codeception/robo-paracept

Пользуюсь согласно документации http://codeception.com/docs/12-ParallelExecution

В public function parallelRun()
{
$parallel = $this->taskParallelExec();
for ($i = 1; $i <= 5; $i++) {
$parallel->process(
$this->taskCodecept() // use built-in Codecept task
->suite(‘acceptance’) // run acceptance tests
->group(“p$i”) // for all p* groups
->env(“p$i”) // in its own environment
// ->xml(“tests/log/result$i.xml”) // save XML results
->html(“tests/log/result$i.html”)
);
}
return $parallel->run();

}

ДОбавил сохранение html репортов.
Но в мерже есть только класс https://github.com/Codeception/robo-paracept/blob/master/src/MergeReports.php для объединения xml репортов. Есть ли у кого-то готовое решение для объединения html репортов?


(Ray Romanov) #2

Походу пока нет возможности склеивать html отчетов. Придется сочинять свой велосипед склеивальщик.


(Tim Moiseev) #3

Ок, а кто подскажет, как правильно тогда в jenkins интегрировать проект?? вот какой лог ошибок у меня приходит
http://joxi.ru/52aJwzwfV6GQA0


(Ray Romanov) #4

А в ручную как запускается, нормально?


(Tim Moiseev) #5

В ручную - да. Мержит xml результаты. А вот в женьке не хочет.

Вот лог и настройки
http://joxi.ru/DrlEdoduWM0qmP

ВОт в гите папка есть http://joxi.ru/l2Z3wRwHb6EoAJ но почему-то не пускает напрямую в нее через гитлаб.
И вот сам лог http://joxi.ru/nAyeyxyhxOwyAZ


(Ray Romanov) #6

А в ручную где находишься и как запускаешь?


(Tim Moiseev) #7

в ручную нахожусь в корневой папке проекта и оттуда запускаю


(Ray Romanov) #8

А корневая пака это где?


(Tim Moiseev) #9

http://joxi.ru/E2pMa1aUndVlAY вот тут


(Ray Romanov) #10

:sweat_smile:
Где, это:
С:\test\my_tes\some\more - Windows
/var/temp/test - *nix


(Tim Moiseev) #11

Женкис у меня на винде установлен…Или я не понимаю вопрос ((((


(Ray Romanov) #12

Я не спрашивал где у тебя женкинс установлен, я спросил где (путь) ты в ручную запускаешь тест и он нормально отрабатывает, т.е. полную строку ручного запуска с путем нахождения.


(Tim Moiseev) #13

http://joxi.ru/Vrwpk8kSlB5bmX вот тут


(Ray Romanov) #14

Ха увидел, ты в женкинсе при сборке какую команду вызываешь?
Выполнить команду shell
А женкинс то у тебя под Windows стоит!!! То вызвать нужно:
Выполнить команду Windows


(Tim Moiseev) #15

Ну если я запускаю так http://joxi.ru/GrqVRXRue1wBmz, то все норм происходит… И тоже из шелла http://joxi.ru/p27gJ9JflQ9d27
Правда не включается естественно распараллеливание тестов. (


(Tim Moiseev) #16

Хм. Почему-то в папке /vendor/codeception/robo-paracept нет ни одного файла. Поэтому и не видит.
Попробовал снова добавить - не добавляется. Попробовал написать + php composer.phar require codeception/robo-paracept:@dev - тоже не добавились. Щас вручную попробую пронести


(Tim Moiseev) #17

Пронес вручную файлы в workspace/vendor/codeception/robo-paracept

Запустил shell
php robo.phar
Выдало в женьке список команд.
Но как пишу команду какую-то к примеру
php robo.phar parallel:run - то не выполняется(

  • php composer.phar install
    Warning: This development build of composer is over 60 days old. It is recommended to update it by running “composer.phar self-update” to get the latest version.
    Loading composer repositories with package information
    Installing dependencies (including require-dev) from lock file
    Nothing to install or update
    Generating autoload files
  • php robo.phar parallel:run
    Build step ‘Выполнить команду shell’ marked build as failure
    Recording test results
    Finished: FAILURE

Забыл селениум включить. Щас норм запустились. )))

Но все равно хотелось бы с html что -нить решить(


(Rinat Wc) #18

Тоже хотел распараллелить accpetance тесты, начал делать по документации.
В итоге на шаге 1, после robo parallel:split-tests который создал файлы в tests/_log c p1 по p5 и добавления в в конце файла codeception.yml в корень
groups: p*: tests/_log/p*
Команда $ php codecept.phar run functional -g p2 выдала что нет тестов с такой группой. В чем может быть проблема? Файлы теста в формате Cest в виде классов. У тестируемых методов так же присутствуюn свои алиасы групп @group blabla


(Tim Moiseev) #19

$ php codecept.phar run acceptance -g p2 нужно поставить) и в коде нужно поставить папку чтобы сомтрел на tests/acceptance


(Rinat Wc) #20

да да, там стоит acceptance. Сюда просто с доки скопипастил. Как то странно. А codeception.yml можете свой показать?