Pull to refresh

Comments 20

А где ассерты? Или тест заключается в том, что успешно все запросы выполнятся?
Нет, серьёзно, объясните про пример из статьи. В каком случае этот тест будет считаться упавшим?

Допустим, разработчик MariaDB внес изменения и сломал то, что раньше работало. В нашем примере это расчет среднего значения. И тест тогда упадет.

При всем уважении к Вам как автору, хотелось бы отметить, что если разработчик MariaDB внес изменения, которые сломали SQL-операции в его СУБД, и при этом выкатил это без тестов или со сломанными тестами, то: 1) на это нам с Вами тяжело повлиять, т.к. это внешний продукт, который разрабатываем совсем не мы 2) с высокой долей вероятности это заметят до того, как мы напишем\запустим тест, ибо у проекта достаточная аудитория 3) видимо, если разработчики допускают подобное, тем более настолько регулярно, что за ними надо перепроверять базовые вещи, то, кажется, имеет смысл задуматься о переходе на другую СУБД, с репутацией получше.

В целом, статья была бы значительно более интересной, если бы пример был посложнее, например, сравнительный тест поведения разных СУБД в одних и тех же условиях, тест какой-то из уникальных фич MariaDB, тест, покрывающий какие-то пограничные условия или история баги, которая нашлась случайно на каком-то кейсе и т.д.
Пока, к сожалению, полезности очень не хватает.

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

Опишите, пожалуйста, что для Вас "база данных как сервис".

Для меня DBaas это то, что предоставляют облачные провайдеры - готовая БД, которая за меня настроена и админится, а управление осуществляется кликами в интерфейсе, а не запросами в команду ДБА. Где с меня снимается головная боль, связанная с железом, стабильностью и прочее.
https://habr.com/ru/company/vk/blog/568478/ - здесь более подробно.

И в этих БД не надо тестить SQL-операции по причинам, которые я указал выше, это уже готовые, чужие решения, у которых есть свои тестеры.

Вы один из них? Моё почтение.
Неужели Вам не нашлось что рассказать, кроме достаточного простого SQL-кода и вольного осмысления документации?
Вот пример от Сергея Бронникова, который занимался тестированием СУБД Tarantool - https://habr.com/ru/company/vk/blog/584864/
Уверен, что и у Вас есть, что рассказать такого, что будет полезнее текущего материала.

Поставьте, пожалуйста, хотя бы тег "для начинающих" или вроде того. А database development лучше заменить.

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

Мне показалось это интересным и полезным. Захотелось поделиться. Сорри если хайпанул с заголовком.

эти тесты работают путём сравнения результатов теста с заранее записанным эталонным результатом (тем самым sergei.result). если совпало — тест считается успешным.

Во, теперь понятно всё! Было бы неплохо добавить это в статью.

Я всё пытаюсь понять, какое отношение статья имеет к тестированию бекенда и у меня не выходит.

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

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

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

Вот я тоже прочитал и первым делом подумал, а как это можно внедрить на проекте? Вот у меня есть уже БД, как это сделать на ней? Или можно тестировать только в дебаг режиме?

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

На самом деле вступления не совсем удачное.

Тогда имеет смысл поправить текст

Статья о том как тестировать базы данных как сервис на примере MariaDB.

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

Но это так же применимо и к другим типам баз данных.

Возможно в других базах данных тоже есть дебаг режим, в котором есть тулинг для вот таких тестов. Но кто, кроме разработчиков этих СУБД будет эти тесты запускать?

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

На что протестировать? На корректность реализации SQL? Такие тесты как правило делают сами разработчики СУБД. А если нужно протестировать подойдёт ли эта база данных для вашего приложения, то это делается совсем по другому.

Сомневаюсь что разработчики СУБД сами тестируют. Для этого существуют тестеры с совсем другой зарплатой.

Сомневаюсь что разработчики СУБД сами тестируют.

Я правильно понимаю, что вы сомневатесь, что разработчики СУБД тестируют корректность реализации SQL в той СУБД, которую они разрабатывают?

Для этого существуют тестеры с совсем другой зарплатой.

А эти тестеры работают в той компании, которая разрабатывает СУБД?

Безусловно любой уважающий девелопер протестирует то, что написал. Но это совсем не тоже самое что делают тестеры, работающие в компании которая разрабатывает СУБД. Иначе они были бы тогда не нужны, от слова совсем.

тестируют, не сомневайтесь. и, скажу вам по секрету, зарплата не совсем другая :)

Sign up to leave a comment.