Как стать автором
Обновить
0
0
Уколов Павел @paulpricker

QA Automation Engineer

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

Руководство по Kubernetes для хейтеров Kubernetes

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


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

Я и сам замешан в перемывании косточек на эту тему.
Читать дальше →
Всего голосов 13: ↑10 и ↓3+14
Комментарии10

Docker для новичков — #1 Что такое контейнер, image, DockerHub?

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

В этой статье я расскажу о том, что такое Docker, Docker Desktop и как этим пользоваться! Два способа создания image, значения вкладок Docker Desktop

Читать далее
Всего голосов 25: ↑20 и ↓5+16
Комментарии6

Бэкапы для самых маленьких и матерых

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

Представьте: вы недавно основали небольшое веб-приложение. Но только он стал расти как полноценный проект — Бац! — серверы легли, а данные не сохранились. Нужно было делать бэкапы. Казалось бы, совет достаточно простой и базовый, но какой тип резервного копирования выбрать? И как правильно к нему «подойти»?

Сегодня — международный день бэкапов. Кажется, это отличный повод, чтобы вспомнить, почему резервное копирование так важно, какое оно бывает и как его настроить. Подробности под катом!
Читать дальше →
Всего голосов 27: ↑26 и ↓1+34
Комментарии10

Пишем сложный Page object для playwright тестов вместе с Dorama

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

Всем привет! Сегодня расскажу о том, как удобно организовать Page Object для большого проекта с использованием Playwright и библиотеки Dorama. Большинство современных веб-проектов имеют сложный интерфейс с переиспользуемыми компонентами. Причем компоненты могут переиспользоваться как на разных страницах, так и в рамках одной страницы. Поэтому важно грамотно оформить POM с самого начала, чтобы можно было добраться до любого локатора любого компонента на странице. Это упростит написание тестов и улучшит читаемость кода. При формировании страниц и компонентов мы будем использовать как наследование, так и композицию. Перейдем к делу.

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

Ты наконец-то поймешь асинхронность в JS

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

Привет, друзья! Сегодня мы поговорим о том, что такое асинхронность в JavaScript и как она работает. Это одна из тех вещей, которые кажутся сложными, но на самом деле довольно просты, как только разберешься.

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

Итак, вы думаете, что знаете Git? Часть первая: старый добрый Git

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

Автор оригинала Скотт Чакон — сооснователь GitHub и основатель нового клиента GitButler. Этот клиент ставит во главу угла рабочий процесс и удобство разработки, в том числе код-ревью, и не является просто очередной обёрткой над CLI git.


В первом посте из этой короткой серии по Git я хотел начать с вещей, уже существующих какое-то время. При этом кажется, что многие люди о них не знают или не умеют ими пользоваться. В них нет ничего нового, но я нахожу их полезными и, возможно, не совсем освещёнными. Я просто хочу рассказать о:



Давайте покопаемся!
Всего голосов 22: ↑21 и ↓1+23
Комментарии6

Анализируем виды тестов для Frontend

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

С развитием веба сайты превратились в сложные приложения, которыми ежедневно пользуются десятки и сотни миллионов людей: почта, облачные хранилища, соцсети, маркетплейсы, стриминговые платформы и т. д. И каждое из них должно работать корректно. Как это сделать? Конечно писать хороший код, а потом и тестировать его. Хотя кто‑то обходится без тестов, тем не менее тестирование — важная часть инженерных практик наравне с мониторингом. Оно помогает нам заблаговременно находить и исправлять баги (или незапланированные фичи) в приложениях. Основная цель тестирования — получить гарантию корректной работы любого ПО .

При этом тестировать современный фронтенд сложно: неуправляемая асинхронность (событийная модель браузера), различие браузеров, тяжелое окружение — это лишь малая часть сложностей. Можно ли все возложить на ручных тестировщиков или исправлять баги после жалоб пользователей? Однозначно нет. В большинстве случаев такой подход в скором времени приведет к оттоку пользователей: не все пишут о багах, просто уходят к конкурентам. Безусловно, ручное тестирование остается важным элементом разработки, но тестировщики не могут держать сотни или тысячи сценариев, которые нужно пройти перед релизом или запуском новой фичи. Так где нам получить гарантии, что ключевые сценарии приложения работают корректно? Автоматическое тестирование.

Всем привет! Меня зовут Миша, работаю фронтэнд‑разработчиком в VK в команде Облака Mail.ru, и я хочу разобрать различные виды тестов, дать их сравнительный анализ и применимость. Сразу скажу, тут не будет практики написания тестов. Потому что это нереально сделать внутри одной статьи, необходимо разобрать: теорию тестирования, классов эквивалентности, различие подходов/методов к тестированию, комбинаторику состояний, правильное использование моков и стабов, понимание чистых функций, знание архитектуры приложения. Поэтому предлагаю сконцентрироваться на видах тестирования и начать с «идеального теста».

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

Расширяем тестовый фреймворк с помощью Pytest-плагинов. Часть 1: теория

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

Всем привет! Меня зовут Александр Волков, я занимаюсь интеграционным и компонентным тестированием в YADRO. В числе продуктов компании есть системы хранения данных и, говоря о тестировании, я буду иметь в виду в первую очередь работу с СХД. Однако описанные подходы пригодятся всем, кто ищет инструменты для создания тестового фреймворка и расширения его возможностей под свои задачи. 

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

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

Это один из лучших подходов к изучению английского, что я видел за последние годы — коллокации

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

Значение слова – это его использование в языке
Людвиг Витгенштейн (сурс) 

Что это вообще за магия такая? Коллокация – это просто пара или группа слов, которые часто возникают вместе. Такие комбинации звучат естественно для носителей языка, однако, тем, у кого язык не родной, бывает сложно догадаться до этой естественной комбинации.

А что если я скажу, что они улучшают сразу и вашу способность органично говорить, и канонично писать, и что совсем удивительно воспринимать английский от носителей языка на слух? И главный вопрос, который меня мучает – почему я узнал об этой технике изучения языка только полгода назад? (Рассказ об этой подготовке здесь.) 

Внимательно посмотрите на пример с картинки. Как только собеседник начал(а) произносить “pitch d…” ваш мозг, зная нужные коллокации, подскажет, что там должно быть “dark”. Даже если вы плохо расслышали эту часть. Это один из механизмов, через который коллокации позволяют лучше воспринимать язык на слух.

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

Disclaimer: если у вас филологическое образование, то вам наверное будет смешно, что кто-то открыл для себя коллокации и их использование для изучения иностранного языка в 202N году, а вот если вы, как и я, когда-то читали “randomize” как “рандомизе”, то возможно эта статья будет вам полезной.

Добро пожаловать под кат
Всего голосов 72: ↑71 и ↓1+95
Комментарии116

Как я наконец осуществил мечту заняться разработкой игр

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

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

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

Как создавали игру Neverwinter Nights

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

Вы слышали новость с игрового «Оскара»? Игра Baldur's Gate 3 от Larian Studios взяла приз «Главная игра года» на церемонии The Game Awards 2023. Она обошла такие игры, как Alan Wake II, Marvel’s Spider-Man 2, Resident Evil 4, Super Mario Bros. Wonder и The Legend of Zelda: Tears of the Kingdom.

Лично я уже несколько лет ни во что не играл — нет времени из-за треклятой работы. Но когда прочитал про триумф BG3, перед моими глазами вдруг всплыли картины из моего подросткового возраста: как я играл в BG1, BG2. Но настоящей жемчужиной для меня была Neverwinter Nights из той же вселенной Forgotten Realms, на основе тех же правил Dungeons & Dragons (правда, в другой редакции). 

По щеке покатилась скупая мужская слеза, и я решил немного поностальгировать об этом шедевре BioWare. И поделиться с читателями, как создавалась игра и что она принесла в игровую индустрию. Может быть, кто-то тоже испытает приятные забытые чувства, как и я. Тем более на Хабре она как-то незаслуженно обделена вниманием.

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

Stable Diffusion. Курс молодого бойца

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

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

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

Так же в конце будет изложен mindset, который необходимо иметь чтобы научиться пользоваться SD. Я буквально попытаюсь научить вас думать как AI художник.

Поэтому без лишних слов, начинаем.

Поехали!
Всего голосов 60: ↑58 и ↓2+70
Комментарии23

Паттерны автоматизации и архитектура автотестов

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

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

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

Как мы сократили время тестирования на 70% благодаря переходу с Cypress на Playwright

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


«Remove .only from Cypress test» — знаком ли вам такой комментарий к коммиту? Если вы используете Cypress для сквозного тестирования, то вы знаете, о чем я говорю.

Мы создали обширный набор из более чем 200 тест-кейсов с помощью Cypress. Хотя Cypress является мощным инструментом, мы в какой-то момент заинтересовались Playwright. Playwright — это быстро развивающийся фреймворк с открытым исходным кодом, разработанный Microsoft. Обещания повысить скорость, унифицировать синтаксис и обеспечить кроссбраузерную поддержку серьезно заинтересовали нас, и мы решили попробовать.

В этой статье мы расскажем, почему и как мы перешли с Cypress на Playwright. Вы узнаете о ключевых преимуществах Playwright и о том, как мы справились с переходом.
Читать далее
Всего голосов 12: ↑10 и ↓2+10
Комментарии5

«Галоп пикселя — часть первая» — базовые понятия, этапы взросления, прикладные упражнения

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


«Галоп пикселя», часть I — базовые понятия, этапы взросления, прикладные упражнения (линк)
«Галоп пикселя», часть II — перспектива, цвет, анатомия и прикладные упражнения (линк)
«Галоп пикселя», часть III — Анимация (линк)
«Галоп пикселя», часть IV — Анимация света и тени (линк)
«Галоп пикселя», часть V — Анимация персонажей. Ходьба (линк)
«Галоп пикселя», часть VI — Анимация персонажей. Бег (линк)

Всем хорошо известно, как мейнстрим подстегивает появление публикаций, связанных с тем, что популярно «на этой неделе». Последние полгода я часто натыкался на статьи «знакомство с пиксель-артом». Начинались они, как правило, с перечисления возможностей определенного софта. Однако за вычетом вопроса выбора программы и беглого перечисления известных фактов ни на йоту не приближали читателя к пониманию того, как этот пиксель-арт готовить. Именно этим досадным упущением мне хотелось бы заняться на первых же страницах 2015-года.

В данной публикации мы не рассматриваем программы, но копаем нечто большее. Сами пиксели. От истоков, начав с четырехцветной CGA-эры, вплоть до эпохи ренессанса. В публикации мы не рассматриваем игры, не поем дифирамбы художникам прошлого (разве что самую малость), занимаясь именно процессом создания простейшего пиксель-арта. Данный материал будет интересен начинающим артистам и интересующимся. Статья практически не содержит теории, нудных умозаключений и представляет сторонний взгляд на мир пиксель-арта со стороны некоего самоучки, который предпочел открыть каждую из Америк самостоятельно, не оглядываясь на официальных, общепризнанных и задокументированных Колумбов. Статья снабжена обильным количеством поясняющих иллюстраций, примеров, и советов.

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


Лопатить пиксели
Всего голосов 190: ↑185 и ↓5+180
Комментарии86

В закладки тестировщика-автоматизатора: от базовых правил для написания быстрых автотестов до полезных плагинов Pytest

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

Привет, Хабр! Принесли полезный контент для всех, кто пишет автотесты на Python. В подборке — видео докладов с последнего AQA-митапа: о плагинах Pytest, архитектуре автотестов для продукта на open source-движке, а также о критериях понятных тестов (и как их соблюдать на практике). Материалы будут полезны как начинающим, так и опытным AQA-инженерам. Под катом — все видео и ответ на вопрос, зачем это смотреть, от гостей митапа.

Смотреть доклады →
Всего голосов 10: ↑9 и ↓1+10
Комментарии0

Твоя первая игра на Godot Engine

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

Здравствуй, в данной статье я хочу в максимально сжатой форме познакомить тебя с основами создания простых 2d платформеров на движке Godot. Иногда мы будем останавливаться на некоторых важных моментах, а иногда пропускать ненужную тебе на начальном уровне информацию. Надеюсь из этой статьи ты сможешь извлечь максимум пользы. Приятного прочтения!

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

Опыт использования AI для QA: тестировщикам приготовиться на выход?

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

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

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

Превратите ваш телефон в продолжение вашей памяти

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

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

Зачем записывать заметки?

Ответ очень прост: вы можете забыть какие-то дела. Телефон - нет.

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

у меня завтра день рождения
Всего голосов 28: ↑16 и ↓12+10
Комментарии145

PIP — Загрузка пакетов python для офлайн установки

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

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

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

Информация

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