Size: a a a

testing_in_python

2021 February 03

GG

Gregory Gruzdov in testing_in_python
Idi Suda
Лучше спросить в @qa_load
Спасибо. Нашел там инфу по тегам.
источник

BK

Boris Krutskih in testing_in_python
Всем привет, есть небольшой вопрос по организации запусков теста.
Значит тесты написаны на python крутятся в Jenkins, запускаются сьюты сразу после того как происходит merge c develop\master веткой, каждые сьюты гонятся для своего енва.
Проблема такова:
1. Сьюта гонится 50 минут
2. И merge request = запуск сьюты
3. Merge реквестов может быть штук 1-10 в течении часа

Проблема: после каждого мёржа вновь запускается сьюта с тестом, и так как они гонятся 50 мин, то выходит очень затратно это всё ждать)

Решение пока что вижу такое... Написать бота, дожидаться всех мержей от разрабов и просто с телеги командой посылать команду на jenkins api, чтобы он массового запустил все джобы с тестами для 1го прогона.
Может посоветуете ещё какие варианты?)
источник

ИС

Игорь Середа... in testing_in_python
Boris Krutskih
Всем привет, есть небольшой вопрос по организации запусков теста.
Значит тесты написаны на python крутятся в Jenkins, запускаются сьюты сразу после того как происходит merge c develop\master веткой, каждые сьюты гонятся для своего енва.
Проблема такова:
1. Сьюта гонится 50 минут
2. И merge request = запуск сьюты
3. Merge реквестов может быть штук 1-10 в течении часа

Проблема: после каждого мёржа вновь запускается сьюта с тестом, и так как они гонятся 50 мин, то выходит очень затратно это всё ждать)

Решение пока что вижу такое... Написать бота, дожидаться всех мержей от разрабов и просто с телеги командой посылать команду на jenkins api, чтобы он массового запустил все джобы с тестами для 1го прогона.
Может посоветуете ещё какие варианты?)
Перед запуском каждой джобы проверять, что текущий коммит является HEAD, иначе останавливать весь пайплайн.
источник

СС

Сказочный Сникерс... in testing_in_python
Игорь Середа
Перед запуском каждой джобы проверять, что текущий коммит является HEAD, иначе останавливать весь пайплайн.
Это не поможет
источник

СС

Сказочный Сникерс... in testing_in_python
Каждый новый запуск запускается как раз на head. И в процессе не может узнать что head уже уехал
источник

СС

Сказочный Сникерс... in testing_in_python
Единственное решение - отменять все предыдущие сборки, если запускается новая. Если я верно понял задачу
источник

СС

Сказочный Сникерс... in testing_in_python
Сделать это можно через груви
источник

ИС

Игорь Середа... in testing_in_python
Сказочный Сникерс
Каждый новый запуск запускается как раз на head. И в процессе не может узнать что head уже уехал
Если в контексте запуска нет .git, то не сможет. А если есть, то достаточно сделать fetch.
источник

СС

Сказочный Сникерс... in testing_in_python
Игорь Середа
Если в контексте запуска нет .git, то не сможет. А если есть, то достаточно сделать fetch.
Ты же не будешь каждую секунду делать фетч
источник

СС

Сказочный Сникерс... in testing_in_python
Да и не сможешь
источник

ИС

Игорь Середа... in testing_in_python
Сказочный Сникерс
Ты же не будешь каждую секунду делать фетч
Перед запуском очередной джобы.
источник

BK

Boris Krutskih in testing_in_python
Сказочный Сникерс
Единственное решение - отменять все предыдущие сборки, если запускается новая. Если я верно понял задачу
Ну вот это как вариант можно
источник

ИС

Игорь Середа... in testing_in_python
Сказочный Сникерс
Да и не сможешь
Про Дженкинс не скажу, в Гитлабе это отлично рулится.
источник

СС

Сказочный Сникерс... in testing_in_python
Игорь Середа
Перед запуском очередной джобы.
У каждой джобы свой воркспейс
источник

СС

Сказочный Сникерс... in testing_in_python
Свой гит
источник

BK

Boris Krutskih in testing_in_python
Сказочный Сникерс
Единственное решение - отменять все предыдущие сборки, если запускается новая. Если я верно понял задачу
Типа если сделал мерж 1, а затем сразу идёт мерж 2, то он быстро отменит мерж 1 и продолжит 2й?
источник

ИС

Игорь Середа... in testing_in_python
Не имеет значения в контексте вопроса. Или я не понимаю, что ты хочешь сказать.
источник

СС

Сказочный Сникерс... in testing_in_python
Игорь Середа
Не имеет значения в контексте вопроса. Или я не понимаю, что ты хочешь сказать.
Запустилась новая сборка. Ты узнал что это новый хэд. Что дальше? Первая сама от этого не остановится, ее надо стопать принудительно
источник

СС

Сказочный Сникерс... in testing_in_python
Boris Krutskih
Типа если сделал мерж 1, а затем сразу идёт мерж 2, то он быстро отменит мерж 1 и продолжит 2й?
Да
источник

СС

Сказочный Сникерс... in testing_in_python
Мы так делаем с пайплайнами на МР, когда пайплайн запускается на каждый коммит открытого МР
источник