Как стать автором
Обновить
16
0

Пользователь

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

Как научиться думать как тестировщик

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

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

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

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

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

Сегодня поговорим о тестировании у нас в Alente, а конкретно — о том, как трансформировалась роль тестировщика в проектах. 

Пару лет назад мы работали как большинство студий: привлекали тестировщика только на этапе тестирования. Но сейчас он принимает деятельное участие в работе уже на этапе сбора требований к сайту. Почему так получилось и как это помогает улучшить продукт? Читайте — и вы всё узнаете. 

Как было раньше? 

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

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

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

Узнать, как мы решили проблемы
Всего голосов 2: ↑1 и ↓10
Комментарии0

Практические рекомендации по работе с Docker для Python-разработчиков

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

Прим. Wunder Fund: в этой длииинной статье вы найдете ряд полезных советов по работе с Docker, как общего характера, так и Python-специфичных. Хоть мы и давно используем Docker в работе, про некоторые советы мы подумали "а что, так можно было?". Советуем вначале пролистать статью, и отметить штуки, которые покажутся актуальными для вашей текущей ситуации.

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

Новое тестирование фичей в Django 3.2

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

Пару недель назад Django 3.2 выпустил свой первый альфа-релиз, а финальный релиз выйдет в апреле. Он содержит микс новых возможностей, о которых вы можете прочитать в примечаниях к релизу. Эта статья посвящена изменениям в тестировании, некоторые из которых можно получить на более ранних версиях Django с пакетами backport.

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

Шесть Python-пакетов, которые рекомендуется использовать в каждом веб-приложении на Django

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

image


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


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


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

Читать дальше →
Всего голосов 14: ↑2 и ↓12-10
Комментарии6

Django ORM для начинающих | Оптимизируем запросы

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


Django ORM (Object Relational Mapping) является одной из самых мощных особенностей Django. Это позволяет нам взаимодействовать с базой данных, используя код Python, а не SQL.
Based on schegel.net

Для демонстрации опишу такую модель:

from django.db import models

class Blog(models.Model):
    name = models.CharField(max_length=250)
    url = models.URLField()

    def __str__(self):
        return self.name

class Author(models.Model):
    name = models.CharField(max_length=250)

    def __str__(self):
        return self.name

class Post(models.Model):
    title = models.CharField(max_length=250)
    content = models.TextField()
    published = models.BooleanField(default=True)
    blog = models.ForeignKey(Blog, on_delete=models.CASCADE)
    authors = models.ManyToManyField(Author, related_name="posts")
Читать дальше →
Всего голосов 14: ↑9 и ↓5+8
Комментарии23

Интеграция .pre-commit hook в Django проект

Время на прочтение5 мин
Количество просмотров16K
Доброго дня!

Меня зовут Соболев Андрей и сегодня я вам расскажу как мы приготовили .pre-commit hook на нашем проекте.

Вступление


Для начала пару слов, о том что такое в целом хуки (hooks) и для чего они могут быть нужны. Git «из коробки» предоставляет инструмент, который умеет запускать ваши скрипты при наступлении какого-либо события (к примеру пуш на сервер и т.п.)

.pre-commit это удобная надстройка над дефолтным git pre-commit hook, которая запускает скрипты описанные в .pre-commit-config.yaml перед созданием коммита. В теории звучит просто, перейдем к практике.
Читать дальше →
Всего голосов 3: ↑2 и ↓1+5
Комментарии6

Теория тестирования ПО просто и понятно

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

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

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

Руководство по работе с Django REST Framework, Swagger и созданию клиента TypeScript для API

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

Цели:

Создать API с помощью Django REST Framework;

Создать динамическую документацию Swagger;

Сгенерировать для API код клиента на TypeScript;

Создать базовое приложение на ReactJS, которое будет использовать сгенерированный код на TypeScript для отображения данных из API.

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

Разбираемся с параллельными и конкурентными вычислениями в Python

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

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

Прим. Wunder Fund: для задач, где не критичны экстремально низкие задержки — при сохранении и обработке биржевых данных, мы используем Питон, и естественно применяем описанные в статье подходы. Статья будет полезна начинающим разработчикам.

Мы увидим, что когда один человек одновременно делает несколько дел — это похоже на конкурентность, а когда несколько человек, работая бок о бок, заняты каждый собственным делом — это напоминает параллелизм. Эти ситуации мы разберём на простом и понятном примере закусочных, в которые люди заходят в обеденный перерыв. Такие заведения стремятся обслуживать клиентов как можно быстрее и эффективнее. Потом я покажу реализацию механизмов этих закусочных на Python, а в итоге мы сравним разные возможности одновременного «приготовления нескольких блюд», которые даёт нам этот язык, и разберёмся с тем, в каких ситуациях их применение наиболее оправдано.

А именно, я раскрою здесь следующие вопросы:

▪ Отличия конкурентности от параллелизма.
▪ Различные варианты организации конкурентного выполнения кода (многопоточность, модуль asyncio, модуль multiprocessing, облачные функции) и их сравнение.
▪ Сильные и слабые стороны каждого подхода к организации конкурентного выполнения кода.
▪ Выбор конкретного варианта организации конкурентного выполнения кода с использованием специальной блок-схемы.

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

Первые шаги в aiohttp

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

Привет, меня зовут Артём. Я работаю бэкендером в KTS и веду курсы по разработке в KTS Metaclass. Заметил, что труднее всего студентам даются темы по асинхронному программированию.

Основываясь на своём преподавательском опыте, я написал туториал, рассказывающий о создании базового aiohttp-сервиса с нуля и затрагивающий самые сложные для студентов вопросы: как сделать асинхронное python-приложение, как работать с базой данных и как разложить свой проект в интернете.

Это первая статья цикла, в ней мы напишем небольшое веб-приложение на aiohttp  — стену с отзывами, где каждый может оставить свое мнение о каком-то продукте.

Погнали!
Всего голосов 2: ↑2 и ↓0+2
Комментарии6

Подборка полезных библиотек для Python с примерами #1

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

У Python одно из самых больших комьюнити. Этот язык любят за его простоту, лояльность и за его универсальность, которая была достигнута созданием огромного числа библиотек и фреймворков, таких как numpy, django, flask, pygame, tornado, tensorflow и других. На сайте pypi содержится более 320 тысяч проектов от малоизвестных и заброшенных до огромных, которыми пользуются миллионы людей в различных сферах. 

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

Ознакомиться
Всего голосов 13: ↑13 и ↓0+13
Комментарии4

35 инструментов для веб-разработчика на каждый день

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

Кроме редактора кода, терминала, браузера и гита веб-разработчики пользуются вагоном и маленькой тележкой маленьких инструментов, которые выполняют какую-то одну задачу, но могут пригодиться в ежедневной работе. Предлагаем вам нашу подборку — надеемся, что что-то пригодится, а по поводу чего-то вы и вовсе скажете «А что, так можно было?».

Краткое содержание: проверка кода по стандартам, проверка вёрстки и стилей, работа с кодом, работа с графикой (SVG, фавиконки, конвертеры и сжималки), работа с текстом (типографы и конвертеры всего во всё).

Дисклеймер: подборка не претендует на полноту, но в комментариях собираем другие полезные инструменты.

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

Как спарсить любой сайт?

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

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

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

Узнать как
Всего голосов 64: ↑55 и ↓9+60
Комментарии89

Фреймворки для тестирования: личный опыт и новые методы

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

Привет, Хабр! Меня зовут Сергей Радченко, и мы с командой профессионально занимаемся тестированием уже несколько лет. Сегодня я посчитал количество автотестов, которые мы подготовили для веб-интерфейсов, десктопных приложений, API, систем двухфакторной авторизации и так далее (их оказалось более 5000). И мне захотелось рассказать о нашем опыте создания экосистемы для автоматизированного тестирования. В этом посте вы найдете описание полезных для комплексного тестирования фреймворков, а также исходный код некоторых дополнительных методов, которые мы дописали самостоятельно, чтобы написание тестов происходило быстрее, и тестирование приносило больше пользы. 

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

48 полноценных бесплатных книг для программистов (happy developer's day)

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

Привет, Хабр! Немного запоздало (ко дню программиста) делюсь подборкой бесплатных книг по программированию. Все они полезные, уровень скорее профессиональный, хотя и для развития от базового тоже подойдет, но, к сожалению, на английском. Среди тем книг: .NET, Алгоритмы, Android, iOS, Angular, C, C++, C#, JS, Linux, Python. В целом, найдется почти любая тема, которая приходит в голову.

Дисклеймер. Все эти книги взяты с одного ресурса, который существует за счет донейшенов. Получить книги можно без осуществления донейшенов, ресурс полностью бесплатный, пожертвования опциональны. Все книги написаны на основе контента со StackOverflow и являются код-ориентированными. Книги со временем обновляются. По ссылкам -- книги, актуальные на 15.09.2021.

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

Когда использовать mocks в юнит-тестировании

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

Эта статья является переводом материала «When to Mock».

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

Ни одна из этих практик не является достаточно хорошей. В этой статье Владимир Хориков покажет, какие зависимости следует мокать, а какие использовать как есть в тестах.

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

Чек-лист — как тестировать поиск

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

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

Поиск — он же есть практически в каждой системе. Поэтому здорово, когда есть шпаргалка «какие вопросы задать аналитику» и «какие проверки провести». Именно это мы в статье и обсудим. Сначала я дам чек-лист, а потом разберу каждый пункт отдельно.

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

Быстрый, мощный интерфейс на Python

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

Dear PyGui принципиально отличается от других фреймворков GUI Python. Рендеринг на GPU, более 70 виджетов, встроенная поддержка асинхронности — это лишь некоторые возможности Dear PyGui. Руководством по работе с этим пакетом делимся к старту курса по разработке на Python.

Читать далее
Всего голосов 54: ↑51 и ↓3+57
Комментарии48

Что видят в ваших резюме Python-рекрутеры, или Как получить работу мечты

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

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

Сегодня посмотрим на 5 резюме с точки зрения рекрутеров, которые ищут Python-разработчиков. На круглом столе конференции Python Week 2020 рекрутеры рассказали, что они ожидают от резюме по умолчанию, а что — им хотелось бы видеть еще. Два резюме будут от джунов, одно — от крепкого миддла, и еще пара — от кандидатов, которые решили поменять направление своей карьеры.

Читать далее
Всего голосов 14: ↑9 и ↓5+11
Комментарии23

Информация

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