Рубрика «тесты» - 3

SpaceX провела летные испытания прототипа ракеты Starship — взлет на высоту 150 метров и мягкая посадка на площадку - 1

Компания SpaceX успешно провела новое летное испытание Starhopper — прототипа первой ступени будущей сверхтяжелой ракеты Starship and Super Heavy. Во время испытаний аппарат поднялся на высоту 150 метров, переместился в сторону, а затем совершил мягкую посадку на специальную площадку неподалеку. Трансляция тестового полета проводилась на YouTube-канале SpaceX.
Читать полностью »

Не успеет Солнце дважды опуститься за горизонт, как все IT-джедаи, падаваны и юнлинги слетятся в звездную систему «Лесные дали», чтобы подтвердить свой IT-статус. Тестированием адептов Силы займутся «Ростелеком», «РТ Лабс» и Хабр. Пунктом инициации станет Российский Интернет-Форум (РИФ), где воины информационных технологий соберутся на совет по множеству вопросов галактической важности — малый и средний бизнес в интернете, дизайн и UX, цифровой маркетинг, кибербезопасность, HR, PR, big data.

Инициация IT-адептов: покажи свою Силу на РИФе - 1

Инициация адептов пройдет в отдельном отсеке звездолета РИФ — пространстве «Ростелекома», «РТ Лабс» и Хабра — где каждый сможет не только доказать свое мастерство, но и получить знания, награды, а также расширить горизонт событий. Точнее, собственных профессиональных перспектив. Подробности — под катом.
Читать полностью »

Давеча на глаза мне тут попалось аж две статьи из одного корпоративного блога, касающиеся облаков — одна про Kubernetes, а во второй была попытка замера производительности по методике, которая мне показалась сомнительной (спойлер — и не зря).
Про K8s мне тоже есть что сказать, но поговорим про производительность.
Недоверие к результатам было вызвано многими факторами, но основными из них для меня стали следующие: параметров запуска тестов не было, количество итераций не озвучено, как выбирались машины не озвучено, подробной конфигурации тоже не было. Сомнительно, в общем.
В целом, я пользуюсь в основном Google Cloud и AWS (в сумме уже с десяток лет опыта по ним набежало) и с отечественными облачными провайдерам особо не работаю, но, по стечению обстоятельств, у меня есть активные аккаунты в Selectel, MCS, Я.Облаке и, после этого теста, еще и в Azure.
К счастью, все эти платформы публичные и что бы я не намерил, каждый при желании может пойти, повторить и проверить.
Итогом всего этого стала мысль — почему бы не потратить пару сотен рублей, все выходные и действительно вдумчиво не померить все шесть платформ и выяснить, какая из них дает лучшую производительность относительно стоимости и в абсолютных цифрах при одинаковых конфигурациях, а заодно и сравнить глобальных поставщиков с российскими.
А так же, как выяснилось, прояснить некоторые «особенности» в выделении ресурсов и напомнить себе и окружающим, что далеко не всегда и не на всех платформах за одни и те же деньги можно получить предсказуемую производительность.
Результаты получились не сказать чтобы феноменальными, но на мой взгляд крайне любопытными.
Интересующихся прошу под кат.
Читать полностью »

Если освоить небольшой список типичных ошибок, возникающих при написании юнит-тестов, то можно даже полюбить писать их. Сегодня руководитель группы разработки Яндекс.Браузера для Android Константин kzaikin Заикин поделится с читателями Хабра своим опытом.

— У меня доклад практический. Надеюсь, он вам всем принесет пользу — и тем, кто юнит-тесты уже пишет, и тем, кто только думает писать, и тем, кто пробует, и у кого не получилось.Читать полностью »

скришот CutterНедавно zerocost написал интересную статью «Тесты на C++ без макросов и динамической памяти», в которой рассматривается минималистический фреймворк для тестирования Си++ кода. Автору (почти) удалось избежать использования макросов для регистрации тестов, однако вместо них в коде появились «волшебные» шаблоны, которые лично мне кажутся, простите, невообразимо уродскими. После прочтения статьи у меня оставалось смутное чувство неудовлетворённости, так как я знал, что можно сделать лучше. Я сразу не смог вспомнить где, но я точно видел код тестов, который не содержит ни единого лишнего символа для их регистрации:

void test_object_addition()
{
    ensure_equals("2 + 2 = ?", 2 + 2, 4);
}

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

Читать полностью »

Многие популярные библиотеки для тестирования, например Google Test, Catch2, Boost.Test тяжело завязаны на использование макросов, так что в качестве примера тестов на этих библиотеках вы обычно увидите картину вроде такой:

namespace {

// Tests the default c'tor.
TEST(MyString, DefaultConstructor) {
  const MyString s;
  EXPECT_STREQ(nullptr, s.c_string());
  EXPECT_EQ(0u, s.Length());
}

const char kHelloString[] = "Hello, world!";

// Tests the c'tor that accepts a C string.
TEST(MyString, ConstructorFromCString) {
  const MyString s(kHelloString);
  EXPECT_EQ(0, strcmp(s.c_string(), kHelloString));
  EXPECT_EQ(sizeof(kHelloString)/sizeof(kHelloString[0]) - 1,
            s.Length());
}

// Tests the copy c'tor.
TEST(MyString, CopyConstructor) {
  const MyString s1(kHelloString);
  const MyString s2 = s1;
  EXPECT_EQ(0, strcmp(s2.c_string(), kHelloString));
}
}  // namespace

К макросам в C++ отношение настороженное, почему же они так процветают в библиотеках для создания тестов?

Читать полностью »

Ускоряйте тесты, говорили они.

И вот уже прошло почти полгода, как мы переписали свои старые необтёсанные, долгие и не стабильные функциональные тесты и перешли на быстрые, ни от чего не зависящие компонентные. Поэтому, пора делиться :)

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

Полгода назад релиз какой-либо фичи, бывало занимало больше часа с учетом того, что код уже давно на мастере и полностью проверен, но мастер ветка никак не может добиться зеленой сборки в bamboo и тогда, встал вопрос, как дальше жить?
Читать полностью »

Задачи и решения для бойца PostgreSQL - 1


Приветствую всех любителей SQL!

В интернете я редко встречал статьи, которые охватывают разные рабочие моменты и тонкости, связанные с обработкой данных в SQL.
Мне нравится, когда из одной статьи можно почерпнуть сразу много всего, пусть даже в общих чертах.
Поэтому решил написал свою статью, содержащую различные задачи и ответы с пояснениями к ним.

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

Представленные ответы подходят для PostgreSQL (большинство задач подойдут и для других СУБД, но результаты и решения могут быть иными. Даже интересно, где возникнут отличия)

Постарайтесь ответить самостоятельно, перед открытием спойлера.

Поехали!
Читать полностью »

Тест для молодого бойца PostgreSQL - 1


Приветствую всех любителей SQL!

В интернете я редко встречал тесты, которые охватывают типичные рабочие моменты и тонкости, связанные с обработкой данных.

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

Представленные ответы подходят для PostgreSQL (большинство задач подойдут и для других СУБД, но результаты и решения могут быть иными).

Приступим!
Читать полностью »

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

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js