Подход к оптимизации времени исполнения тестов в TA от марта 2025
February 22, 2025
Введение
Методика
Бейзлайн
Среднее время запуска одного (последнего добавленного - возврат метод получения страницы программ должен возвращать только программы аутентифицированного терапевта) теста: 6 секунд ровно.
- 5:80
- 5:85
- 6:00
- 6:03
- 7:60
Среднее время запуска 189 (из 192 всех) быстрых тестов: 18.4 секунды
- 18:20
- 18:23
- 18:40
- 18:77
- 26:73
Линивая инициализация бинов
Среднее время запуска одного теста: 5.83 секунды
- 5:49
- 5:74
- 5:83
- 5:92
- 6:41
Среднее время запуска 189 быстрых тестов: 19.4 секунды
- 18:97
- 19:00
- 19:28
- 19:72
- 22:34
Создание БД из шаблона при запуске тестов
Среднее время запуска одного теста: 5.37 секунды
- 5:39
- 5:37
- 5:43
- 5:50
- 5:64
Среднее время запуска 189 быстрых тестов: 18.46 секунды
- 18:24
- 18:45
- 18:46
- 18:66
- 18:99
Добавление бейзлайна Flyway-я
Среднее время запуска одного теста: 5.97 секунды
- 5:56
- 5:74
- 5:97
- 6:11
- 6:32
Среднее время запуска 189 быстрых тестов: 20.49 секунды
- 19:57
- 20:15
- 20:49
- 20:83
- 21:10
Конфигурация Postgres на максимальную производительность
Среднее время запуска одного теста: 5.83 секунды
- 5:68
- 5:73
- 5:83
- 6:14
- 6:42
Среднее время запуска 189 быстрых тестов: 19.81 секунды
- 19:52
- 19:64
- 19:81
- 21:55
- 22:13
Переезд на Postgres 17.4
Среднее время запуска одного теста: 5.89 секунды
- 4:95
- 5:79
- 5:89
- 6:24
- 6:25
Среднее время запуска 189 быстрых тестов: 20.58 секунды
- 18:78
- 19:25
- 20:58
- 20:81
- 21:28
DB Template + Non-durable Postgres + 17.4
Среднее время запуска одного теста: 5.69 секунды
- 5:60
- 5:68
- 5:69
- 5:70
- 5:77
Среднее время запуска 189 быстрых тестов: 18:49 секунды
- 18:24
- 18:45
- 18:49
- 18:81
- 21:95