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

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

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

27 ответов

13 просмотров

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

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
потому что тогда будут каждый раз добавлятся. А мн...

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

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

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

я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
короче сгенерила мне эта штука код на ассемблере: struc string val { common local .value dq .value .value: if ~val eq db val end if db 0 } fo...
Vi Chapmann Chapmann
12
Всем привет! Массив вводится с клавиатуры, кол-во элементов неизвестно, поэтому я указал arr db 100 dup(?) С нахождением максимума проблем нет, а вот минимум почему-то всегд...
En Vind Av Sorg
11
#include <stdio.h> int main(void) { int n; scanf("%d", &n); int digits1[n] = {0}; int digits2[n] = {0}; я не могу таким образом заранее массив нулями заполнить?
Linus
12
в сях есть множество как в питоне? для удаление дубликатов
Linus
25
я про форму записи. смысл указывать что 8 байтный регистр 8 байт?
Aiwan \ (•◡•) / _bot
10
читать файл максимально быстро? странный вопрос))
zamtmn
53
Вроде бы вопрос уже заезжанный, но тем не менее У меня есть функция menu() которая выводит набор возможных действий, а затем спрашивает у пользователя что он хотел бы сделать....
David Golovatin
3
Кто создает тут ботов для телеграмм групп ?
Antskup
8
а как бы вылезти из ИО, что то типа IO -> Ether или в какую сторону смотреть ? что то туплю
Fedor
14
Карта сайта