Skip to content

Instantly share code, notes, and snippets.

View jigi-33's full-sized avatar
👨‍💻
done!

ilya shaburov jigi-33

👨‍💻
done!
  • ITC of NSR
  • Novosibirsk, Russia
  • 01:56 (UTC +07:00)
View GitHub Profile
@jigi-33
jigi-33 / clean_code_thesisis_of_robert_martin.md
Last active July 2, 2020 16:30
Summary of 'Clean code' book by Robert Martin

Code is clean if it can be understood easily by everyone of the team

Clean code can be read and enhanced by a developer other than it's original author

It comes readability, changeability, extensibility and maintainability.


General rules

  1. Follow standard (also development team) conventions.
  2. Keep it simple stupid. Simpler is always better. Reduce complexity as much as possible.
@jigi-33
jigi-33 / sdlc_solids.md
Last active July 2, 2020 14:30
Software development lifecycle (SDLC) solids

SDLC (Software Development Life Cycle): Phases, Methodologies, Process and Models

What is Software Development Life Cycle (SDLC)? Learn SDLC phases, methodologies, process and models.

Software Development Life Cycle (SDLC) is a framework that defines the steps involved in the development of software at each phase. It covers the detailed plan for building, deploying and maintaining the software.

SDLC defines the complete cycle of development i.e. all the tasks involved in planning, creating, testing, and deploying a Software Product.

https://cdn.softwaretestinghelp.com/wp-content/qa/uploads/2019/01/Software-Development-Life-Cycle-SDLC.png

@jigi-33
jigi-33 / кто_есть_тру_инженер_производительности_к_чему_стремиться.md
Last active July 2, 2020 13:12
Функции, цели и задачи успешного инженера клиентской производительности

Каким должен быть и чем заниматься true инженер-программист клиентской производительности (QA)

к чему стремиться каждый день

Чем занимается

  1. Разрабатывает и автоматизирует методики для тестирования производительности приложений
  2. Строит эффективную двухстороннюю связь с членами команды QA и разработчиками, совершенствует систему отчетности
  3. Создает и улучшает инструменты для автоматического прогона автотестов и мониторинга результатов

Успешный специалист в этой области способен

@jigi-33
jigi-33 / Отношения_и_технические_навыки--11_принципов_успеха.md
Last active June 26, 2020 16:26
Agile тестирование. Отношения и технические навыки тестировщиков в команде. 11 принципов успеха

Конспекты по Agile в тестировании ПО

№ 1. Отношения и технические навыки тестировщиков в гибкой команде: 11 принципов успеха

из главы 3 "Роли и компетенции" книги Дж.Грегори и Л.Криспин
  1. Предоставление постоянной обратной связи
  2. Создание выгодных условий для заказчика(клиента)
  3. Создание условий для личного общения
  4. "Не бояться"
  5. "Не усложнять"
@jigi-33
jigi-33 / Важность_понимания_предмета_при_тестировании_веб_производительности.md
Last active June 22, 2020 16:38
Особенности и нюансы в тестировании производительности приложений

Важность понимания предмета при тестировании Веб-производительности

Многим тестировщикам хорошо известны такие инструменты, как JMeter, Gatling, Tsung и т.д. Хотя они довольно просты в использовании, анализ полученных результатов и выводы на их основании представляют для них некоторую сложность. Во время проведения собеседований на позицию QA инженера часто встречаются кандидаты, утверждающие, что у них есть опыт в области тестирования производительности, но, по факту, не обладающие знаниями метрик и основных понятий, с ним связанных. Поскольку основной задачей тестирования производительности является не знание инструментария, а данные, полученные с его помощью, цель этого материала - рассмотреть основные аспекты этой сферы тестирования.

тест на Производительность vs Нагрузочный тест

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

@jigi-33
jigi-33 / unit-testing_approaches_best_practices.md
Last active January 14, 2025 14:03
Unit-тестирование: подходы и лучшие практики

Подходы и лучшие практики в UNIT-тестировании

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

Ниже упомянуты best practices & approaches of unit testing.

Юнит-тестирование - тестирование одного продакшн юнита в полностью контролируемом окружении.

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

@jigi-33
jigi-33 / autotest_composition_best_practices.md
Last active July 7, 2020 19:34
Оформление автотестов: лучшие практики

Принципы оформления кода и структуры автотестов

  • Стремитесь к максимальной линейности кода тестов.

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

  • Избегайте зависимых тестов,

которые нужно запускать строго в определенном порядке. При росте количества автотестов вы захотите запускать их в несколько потоков параллельно, что будет невозможно при наличии зависимых тестов. А еще зависимые тесты очень не надежны. Подробнее: http://barancev.github.io/test-deps-are-evil/

@jigi-33
jigi-33 / pycharm_favorite_hotkeys.md
Last active August 3, 2022 07:12
Most useful hotkeys in PyCharm (my opinion)

PyCharm favorite shortcuts


Ctrl-Shi-F    - поиск по всему пути проекта (Find in path...)
Ctrl-O        - открыть файл
Ctrl-Z        - Undo
Crtl-Shi-Z    - Redo
Ctrl-D        - дублировать текущую строку (выделенные строки) в следующую(-ие) со вставкой ниже
Ctrl-P        - получить подсказку по аргументам функции
Ctrl-Y - удаление всей строки
@jigi-33
jigi-33 / pull_request_rules.md
Last active June 20, 2020 05:25
Правила при создании pull / merge реквестов

Шаблон, которому должен следовать разработчик при создании pull / merge request’a

  • Описание Request’a

  • Что нового?

    Реализовано…

  • Что изменилось?

@jigi-33
jigi-33 / basic_autotester_patterns.md
Last active June 25, 2020 11:02
Базовые паттерны автотестировщика

Базовые паттерны автотестировщика

тезисы

ИЗБЕГАТЬ ДУБЛИРОВАНИЯ ТЕСТОВ

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

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

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