Как стать автором
Обновить
11
0
Евгений Карандасов @dgon_kondrasov

старший QA инженер

Отправить сообщение

Пример event-driven приложения на основе вебхуков в объектном S3-хранилище Mail.ru Cloud Solutions

Время на прочтение11 мин
Количество просмотров7.1K

Rube Goldberg coffee machine

Event-driven architecture повышает ценовую эффективность используемых ресурсов, потому что они задействуются только в тот момент, когда они нужны. Существует масса вариантов, как это реализовать и не создавать дополнительные облачные сущности в качестве worker-приложений. И сегодня я расскажу не про FaaS, а про вебхуки. Я покажу учебный пример обработки событий с помощью вебхуков объектного хранилища.
Читать дальше →
Всего голосов 14: ↑13 и ↓1+25
Комментарии0

Настройка LEMP-сервера с помощью Ansible для простых проектов. Часть первая: знакомство с Ansible

Время на прочтение13 мин
Количество просмотров22K

Мы продолжаем цикл обучающих статей для начинающих системных администраторов. В этом материале мы разберем Ansible, Ansible-Playbook, и как поднять полноценный веб-сервер с помощью системы автоматизации. Отметим, что если вы являетесь опытным администратором, можете смело пропускать данный материал.

Читать далее
Всего голосов 6: ↑4 и ↓2+2
Комментарии7

Xудшие практики для Ansible. Георгий Шуклин

Время на прочтение20 мин
Количество просмотров22K


Приветствую всех! Меня зовут Георгий. Я работаю в компании servers.com. Я пришел рассказать про Ansible: про хороший Ansible и про плохой Ansible в основном, т. е. про то, как люди могут плохо делать на Ansible.

Всего голосов 25: ↑22 и ↓3+27
Комментарии31

Введение в мониторинг серверов с помощью Prometheus и Grafana

Время на прочтение4 мин
Количество просмотров76K

Мониторинг нужен всем: и серверам крупных технологических компаний и домашним Raspberry PI. Мониторинг позволяет узнать, когда сервер выходит из строя, когда заканчивается дисковое пространство и даже когда подходит время апгрейда.

В этой статье рассмотрим настройку базового мониторинга с помощью Prometheus, Node Exporter и Grafana.

Читать далее
Всего голосов 12: ↑7 и ↓5+3
Комментарии4

Основы мониторинга (обзор Prometheus и Grafana)

Время на прочтение15 мин
Количество просмотров94K

Мониторинг сегодня – фактически обязательная «часть программы» для компаний любых размеров. В данной статье мы попробуем разобраться в многообразии программного обеспечения для мониторинга и рассмотрим подробнее одно из популярных решений – систему на основе Prometheus и Grafana

Читать далее
Всего голосов 15: ↑12 и ↓3+11
Комментарии21

Скучный Python: повышаем качество кода

Время на прочтение17 мин
Количество просмотров22K

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

Читать далее
Всего голосов 26: ↑26 и ↓0+26
Комментарии5

Актуален ли еще Solid?

Время на прочтение5 мин
Количество просмотров14K

Перевод статьи Роберта Мартина

Недавно я получил письмо:

В течение многих лет проверка понимания принципов SOLID было стандартной частью нашей процедуры приема на работу. Предполагалось, что кандидаты хорошо знакомы с этими принципами. Однако в последнее время один из наших менеджеров, который больше не занимается программированием, усомнился в том, что это разумно. Его аргументы заключались в том, что принцип открытости-закрытости (open–closed principle) больше не очень важен, потому что большая часть кода, который мы пишем, не содержится в больших монолитах, а внесение изменений в небольшие микросервисы безопасно и легко. Принцип подстановки Лисков (Liskov substitution principle) давно устарел, потому что мы не уделяем столько внимания наследованию, как 20 лет назад. Я думаю, нам следует рассмотреть позицию Дэна Норта по SOLID: «Просто напишите простой код».

В ответ я написал следующее письмо:

Принципы SOLID остаются актуальными и сегодня, как и в 90-е годы (и даже до этого). Это потому, что программное обеспечение не сильно изменилось за все эти годы. Оно не сильно изменилось даже с 1945 года, когда Тьюринг написал первые строчки кода для электронного компьютера. Программное обеспечение по-прежнему представляет собой операторы if, циклы while и операторы присваивания - последовательность, выбор и итерацию.

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

Читать далее
Всего голосов 17: ↑13 и ↓4+11
Комментарии45

Принципы Solid и как они помогают сделать код лучше

Время на прочтение10 мин
Количество просмотров26K

Про принципы Solid написано немало, в том числе на Хабре. Показывали в картинках, рассказывали на примерах.  

Так чем же будет отличаться эта статья, спросите вы? А мы скажем: подходом. Сначала мы расскажем про ситуации, которые порой возникают на проектах, как код разрастается, становится сложнее и как сделать так, чтобы этот самый код не потерял в качестве и был читаем. 

Читать далее
Всего голосов 12: ↑8 и ↓4+4
Комментарии14

Типы тестировщиков

Время на прочтение15 мин
Количество просмотров24K

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

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

Читать далее
Всего голосов 13: ↑13 и ↓0+13
Комментарии3

Оптимизация тестов для Continuous Integration

Время на прочтение6 мин
Количество просмотров1.8K

«Начинайте тестировать как можно раньше» — эта фраза часто встречается в разных докладах и обучающих материалах. Это правда, чем раньше наши тесты найдут проблему, тем быстрее и дешевле мы ее решим. Это одна из главных причин эффективности CI. Часто встречаются команды, у которых очень много написанных автотестов, но они не используют тесты как подход к CI. Существуют различные причины, по которым команда считает, что эти тесты нельзя использовать в CI. Возможно, выполнение тестов занимает слишком много времени или они недостаточно надежны

Читать далее
Всего голосов 2: ↑1 и ↓1+1
Комментарии2

Как жить QA в условиях проблемной документации

Время на прочтение6 мин
Количество просмотров8.4K

Как быть тестировщику, если на проекте нет аналитика и спецификации? Маша Кузнецова, младший QA-инженер red_mad_robot, рассказывает о трёх возможных вариантах действия — осторожном, умеренно рискованном и максимально упоротом. Будет особенно полезно QA начального и среднего уровня — чтобы не растеряться, попав в похожую ситуацию.

Читать далее
Всего голосов 6: ↑6 и ↓0+6
Комментарии4

Что делать, если в начале спринта у тестировщика нет задач?

Время на прочтение3 мин
Количество просмотров19K

Часто в начале спринта у тестировщика нет задач. Ну а что, тестировать еще нечего, приходится ждать готового функционала.

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

Читать далее
Всего голосов 7: ↑7 и ↓0+7
Комментарии16

Наши любимые приложения-помощники в тестировании back-end

Время на прочтение4 мин
Количество просмотров13K

Всем привет! Меня зовут Константин, и я работаю ведущим тестировщиком в дружной команде back-end компании Solit. Мои коллеги уже не раз делились различными хитростями и ноу-хау, которые они применяют в своих проектах. Я же решил пойти немного другим путём и поделиться с вами набором сервисов и утилит, которые помогают нам прийти к недостижимой цели — работа приложений без дефектов.

 В мою подборку попали те приложения, которые прижились в нашей команде и ими пользуется более одного человека. Конечно, есть очевидные вещи, типа Notepad++. Но есть и более редкие «звери», типа JWT.

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

Приложения для генерации данных

Правильная подготовка тестовых данных — уже половина успешного тестирования. В этом разделе я собрал приложения, которые помогают быстро сгенерировать большие (я бы даже сказал, очень БОЛЬШИЕ) объёмы тестовых данных.

pgCodeKeeper

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

 В нашем случае она прижилась именно как генератор тестовых данных для БД Postgres. Подробнее о том, как он работает, можно прочитать в официальной справке pgCodeKeeper.

Читать далее
Всего голосов 9: ↑8 и ↓1+9
Комментарии6

В чем разница между unit и компонентным тестированием

Время на прочтение4 мин
Количество просмотров8.9K

И почему вас это должно волновать.

При компонентном тестировании вы тестируете более ранние этапы процесса разработки, и вместо тестирования всего приложения (или его большого фрагмента) вы тестируете более мелкие части приложения. С точки зрения Shift Left это очень важно.

Читать далее
Всего голосов 4: ↑3 и ↓1+3
Комментарии2

Pytest-фикстуры на человеческом

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров18K

Привет, сообщество.

Я хотел бы поделиться с Вами своим объяснением того, как понять фикстуры и как начать их использовать в своих проектах, тем самым начать радоваться жизни).

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

Читать далее
Всего голосов 15: ↑12 и ↓3+14
Комментарии38

Как я завалил первый тех. собес на позицию Junior QA Engineer

Время на прочтение7 мин
Количество просмотров42K

Здравствуйте, меня зовут Артём, и я с ноября месяца изучаю тестирование. Спустя ровно два месяца я получил первое приглашение на техническое собеседование, позиция Junior QA Engineer, мобильная разработка, геймдев. Хотел бы поделиться этой историей с теми кому это может пригодиться, так как не все мои ожидания оправдались, а некоторые вопросы на собеседовании действительно поставили в тупик.

Читать далее
Всего голосов 26: ↑21 и ↓5+21
Комментарии55

Quality Assurance по пятницам: 7 типов тестирования на примере пельменей

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров9.3K

Доходчивые примеры для погружающихся в QA. Перед прочтением лучше как следует поесть.

Я поел
Всего голосов 7: ↑5 и ↓2+3
Комментарии13

Как тестировщику критиковать и сохранить хорошие отношения с командой?

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров10K

Привет, Хабр! Меня зовут Герман, я давно работаю в тестировании (ex Тинькофф, Островок, Яндекс).

Про тестировщика создаётся стереотип ворчуна, который постоянно всем не доволен и занимается только тем, что ищет изъяны в чужой работе.

Поделюсь своим опытом — как тестировщику критиковать и сохранить хорошие отношения с командой.

Твою критику не должны воспринимать в штыки. С командой тебе работать несколько лет, ходить с ними в барчик и ещё карьеру как-то строить.

Читать далее
Всего голосов 10: ↑7 и ↓3+9
Комментарии27

PyTest для машинного обучения — простой учебник на основе примеров

Время на прочтение8 мин
Количество просмотров8.4K

В этой статье много замечательных моментов, которые показывают, почему тестирование улучшает доставку, производительность и долгосрочную прибыльность любого программного продукта или услуги для бизнеса всех видов и отраслей промышленности. Специально к старту нового потока нашего курса по ML и его расширенной версии Machine Learning и Deep Learning мы покажем, как с помощью PyTest создать эффективные тестовые функции для простого модуля машинного обучения.

Читать далее
Всего голосов 7: ↑6 и ↓1+6
Комментарии1

Как в hh.ru тестируют поиск по вакансиям

Время на прочтение4 мин
Количество просмотров6.9K
Я уже делился рассказом о нашем опыте применения искусственного интеллекта в поиске на hh.ru, а сегодня хотел бы остановиться на измерении качества этого поиска поподробнее.

Для нормальной работы поиска крайне важна система метрик — локальных, A/B-тестов, очередей на проде и т. д., и эта система требует отдельного внимания и ресурсов. Неправильно думать, что достаточно просто запилить крутой ML и прикрутить все эти метрики «скотчем»; недостаточно также измерять качество работы уже работающей системы — не так уж важно, использует ли она ML или представляет собой Lucene «из коробки».
Читать дальше →
Всего голосов 18: ↑17 и ↓1+16
Комментарии4

Информация

В рейтинге
Не участвует
Откуда
Россия
Работает в
Зарегистрирован
Активность