170 похожих чатов

Насколько считается хорошим подходом для интеграционных тестов делать апсерт данных

в бд на которые делаем запросы при каждом прогоне тестов?

27 ответов

32 просмотра

В смысле? Перед тестами надо бд подготовить. Желательно, так, чтобы там были чистые данные, не загрязненные другими тестами

Dmitriy-Тiutiunnyk Автор вопроса

ну вот я ж об этом говорю .Нормально чтоб туда добавить тестовых данных а потом по ним кверять в тестах

Dmitriy Тiutiunnyk
ну вот я ж об этом говорю .Нормально чтоб туда доб...

Конечно, нормально. Перед тестом надо базу очистить и заново заполнить необходимыми данными. Если это медленно, то можно посомтреть на всякие COPY и создание бд из темплейтов

Dmitriy-Тiutiunnyk Автор вопроса
Pavel Павлик
Конечно, нормально. Перед тестом надо базу очистит...

очеистить не надо. Это база для стейдж енва а не локальная, так как тестты интеграционные

Dmitriy Тiutiunnyk
очеистить не надо. Это база для стейдж енва а не л...

Эмм. А что ты подразумеваешь под интеграционными тестами. Что именно там происходит и как тестируется?

Dmitriy-Тiutiunnyk Автор вопроса
Pavel Павлик
Эмм. А что ты подразумеваешь под интеграционными т...

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

Может просто данные подготовить заранее? Тестировать всё-таки лучше так, чтобы после успешных тестов не менять ничего в тестируемом коде

Dmitriy-Тiutiunnyk Автор вопроса
Const
Может просто данные подготовить заранее? Тестирова...

так вроде так и просиходит. Я хочу сделать чтоб в начале сессии тестов данные создаются в таблице если их нет. потом мы делаем запросы на эти данные по апи

Dmitriy Тiutiunnyk
так вроде так и просиходит. Я хочу сделать чтоб в ...

Хз как лучше честно говоря Я бы с чистой базы делал, но это только интуиция)

Dmitriy-Тiutiunnyk Автор вопроса
Alex
Как одно связано с другим?

потому что обычные тесты на чистой локальной базе а интег тесты на реальной должны

Dmitriy Тiutiunnyk
потому что обычные тесты на чистой локальной базе ...

Как ты пришел к этому охуительному выводу?

Dmitriy-Тiutiunnyk Автор вопроса
Const
А чё прод будет делать во время тестов?)

прод ничего. это на стейдж базе

Dmitriy Тiutiunnyk
прод ничего. это на стейдж базе

Так стейдж база или реальная?

Dmitriy-Тiutiunnyk Автор вопроса

стейдж база это реальная база ,ей пользуются люди больше для тестовых целей. Думаю у многих компаний воркфлоу построен что есть апка для прода и для стейджа

Dmitriy Тiutiunnyk
стейдж база это реальная база ,ей пользуются люди ...

> больше для тестовых целей Ну так и заюзайте ее для тестов, в чем проблема? Если ты в базе, с которой люди работают, чёт будешь менять (не важно с чистой или апсертами), то оно один хер им сломает всё

Dmitriy-Тiutiunnyk Автор вопроса
Const
> больше для тестовых целей Ну так и заюзайте ее ...

там есть данные что нужны людям с других департаметов для тестовых целей их не надо удалять

Dmitriy Тiutiunnyk
там есть данные что нужны людям с других департаме...

Если ты их не удаляешь, но меняешь, то один хер всё полетит у тех, кто их юзает Если же ты удаляешь/меняешь данные, которые люди не юзают, то один хер никак на людей не повлияет

Const
Если ты их не удаляешь, но меняешь, то один хер вс...

Ну... последнее не всегда верно, но в целом идея правильная

Dmitriy-Тiutiunnyk Автор вопроса
Const
Если ты их не удаляешь, но меняешь, то один хер вс...

я не буду их менять. Буду добавлять свои тестовые записи

Dmitriy Тiutiunnyk
я не буду их менять. Буду добавлять свои тестовые ...

Так и зачем тогда апсерт? Обычный инсерт используй

Dmitriy-Тiutiunnyk Автор вопроса
Const
Так и зачем тогда апсерт? Обычный инсерт используй

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

Dmitriy Тiutiunnyk
потому что тогда будут каждый раз добавлятся. А мн...

А вы после тестов не очищаете тот мусор, что насоздавали?)

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта