Привет! Меня зовут Артём, и я занимаюсь автоматизацией тестирования. Антипаттерны в разработке — довольно популярная тема. Но ведь в тестировании тоже есть свои "плохие советы", и они довольно забавно пересекаются с разработкой. Недавно мне на глаза попалась ироничная статья про антипаттерны в тестировании. Вашему вниманию!
Мы стараемся как можно скорее доказать, что неправы, потому что только таким образом можем развиваться. Ричард Фейнман
Есть много способов усложнить жизнь командам автоматизации тестирования. Если вы разработчик или системный архитектор, и недолюбливаете кого-то из тестировщиков, то эта статья — для вас. Вы найдете в ней сокровенное знание, вдохновившись которым, вы научитесь делать интерфейс любого приложения практически непригодным для тестирования.
Ну, а если вы добрая душа и уважительно относитесь к чужому труду, то можете рассматривать эту статью как набор антипаттернов.
Пожалуй, ни в одной компании не найдется двух идентичных и взаимозаменяемых сотрудников. Одни превосходно разбираются в техниках тест-дизайна и ювелирно пишут тестовую документацию, другие — мастера различных видов и типов тестирования. В процессе работы над проектами сотрудники, как правило, дополняют друг друга, что благотворно сказывается на конечном продукте.
Вся наша работа по обеспечению качества выстроена на основе глубокой экспертизы прикладной области. Для одних команд — это страхование, для других — финансовые инструменты, интернет-банкинг или биржевая торговля, для третьих — широкий сектор государственных проектов.
Секрет в том, что тестировщики должны не просто разбираться в прикладной области, а должны знать ее специфику и наиболее типичные ошибки, более того – должны понимать своих пользователей.
Именно поэтому мы так много времени и сил уделяем обучению и погружению наших сотрудников.
Такие термины, как тестирование производительности, нагрузочное и стресс-тестирование часто используются как синонимы. Однако замер скорости работы сервиса и измерение возможной нагрузки на него – это не одно и то же, а подтверждение способности сервиса справиться с нормальным уровнем нагрузки не означает, что он так же среагирует на очень высокую. Как же создавать высокоэффективные тесты производительности, не налепив распространенных ошибок?
Вначале определитесь, чего вы ожидаете от сервиса, и что именно вы хотите проверить. Ваше приложение – "заяц", обязанный максимально быстро отвечать на вопросы? А может, это "черепаха", которая выигрывает гонку благодаря постоянно поддерживаемой скорости?
В реальной жизни веб-сервисы имеют как качества зайца, так и качества черепахи, и эти качества должны быть сбалансированы. Они проверяются по-разному в зависимости от природы вашего теста. Без глубокого понимания сервиса, его применения пользователями, пользовательской базы и целей теста вы потратите много времени, гоняясь за несуществующими проблемами, в то время как реальные риски утекут у вас сквозь пальцы.
Начиная свой путь в отрасли тестирования, задаешься вопросами: с чего начать? как развиваться? какие знания необходимы для получения работы? как стать признанным специалистом в своей компании и востребованным на рынке труда? Компания "Лаборатория Качества" подготовила курс, который поможет ответить на все эти вопросы.
Программа создана для специалистов по тестированию, как совсем начинающих, так и с опытом до 1-2 лет.
Через 8 недель курса вы:
Будете хорошо ориентироваться в терминологии тестирования
Сможете успешно проводить тестирование (исследовательское и скриптовое)
Будете обладать ключевыми навыками тестирования интеграции (с использованием SoapUI) и баз данных (SQL)
Научитесь разрабатывать базовые автоматизированные тесты для функционального (Selenium) веб-тестирования
Сможете автоматизировать стандартные операции, такие как сравнение файлов, анализ логов, подготовка тестовых данных и т.д.
Ознакомитесь с особенностями тестирования веб-продуктов и мобильных приложений и требуемым для этого инструментарием
Сможете с пользой для проекта тестировать требования и другую пользовательскую документацию
Научитесь оптимальному баг-трекингу, форматам составления тестовых артефактов, ознакомитесь с самыми популярными инструментами ведения чек-листов, тест-кейсов и баг-трекинговыми системами
Внимание: спеццена на первый запуск курса!!!!
Особенности курса:
Максимальная практичность Мы учим только тому, что действительно необходимо в тестировании, и закрепляем навыки на конкретных домашних заданиях. Никаких тестирований карандашей - только такие задания, которые вам действительно пригодятся.
Экспертный состав За различные вебинары отвечают отдельные эксперты в своей теме. Таким образом, вашим обучением займутся только опытные практики, ежедневно решающие задачи, о которых расскажут на своих вебинарах. Никакой бесполезной теории - только то, что действительно необходимо грамотным тестировщикам.
Детальная обратная связь Если вы что-то не поняли, или некорректно выполнили ДЗ, или не согласны - тренер будет индивидуально работать с вами до успеха. Никаких "бросить в воду и ждать, пока научится плавать" - мы будем с вами до тех пор, пока вы не поплывёте.
Краткая программа курса и тренеры конкретных модулей
Введение в тестирование (Наталья Руколь) Баг-трекинг (Анастасия Смирнова) 5 техник исследовательского тестирования (Нина Агеева) Введение в проектирование тестов (Ирина Старцева) Тест-анализ и тестовая комбинаторика (Ирина Старцева) Тест-дизайн и документирование тестов (Анастасия Смирнова) Тестирование требований к программному обеспечению (Виктория Соковикова) SQL для тестировщика (Роман Буданов) Тестирование веб-продуктов (Анна Хворостьянова) Тестирование веб-сервисов (Артем Шмыга) Тестирование юзабилити (Виктория Соковикова) Основы тестирования мобильных приложений (Виктория Юркевич) Эмуляторы, симуляторы и фермы для мобильного тестирования (Виктория Юркевич) Автоматизация тестирования. Инструменты автоматизации (Александра Гудкина) Автоматизация тестирования. Создание автотестов (Александра Гудкина) Организация процесса тестирования (Наталья Руколь) Карьера и развитие (Елена Крестина)
При изучении любой дисциплины самое сложное/главное понять основы, базовые принципы, на пальцах, на школьных примерах, затем, на этот металлический каркас можно навесить тонны бетонной практики, получившийся железобетонный монолит станет гарантией практически не ограниченного технического роста специалиста. Звучит самоочевидно, не правда ли ..? И тем не менее, субъективный опыт автора в проведении собеседований, а это около ~500 специалистов из стран СНГ, Индии, США в Автоматизации тестирования и сопоставимые цифры в С \ С++ мире, говорит, что даже Senior разработчики в большинстве не понимают «физического смысла» ООП, не могут озвучить базовую формулировку одного из «столпов» - инкапсуляции, хотя знают как на 3 языках, 20 способами реализовать интерфейс, класс и объект, а вот вырасти дальше уже не могут, и вынужденно в течении 20 лет топчутся на месте. Вот это досадное карьерное недоразумение мы и постараемся исправить. IMHO тема будет интересна/полезна самому широкому кругу слушателей, от молодых специалистов в Ручном тестировании до Архитекторов в Автоматизации.
Большая часть моей работы посвящена обучению, тренировке и оценке тестировщиков. Как гуманисту, мне хочется применить тут эвристику разнообразия: наши различия могут сделать команду сильнее. Это означает, что я не могу выбрать один-единственный тип тестировщиков и оценивать людей согласно этому шаблону. С другой стороны, я вижу интересные модели навыков и темперамента у тестировщиков, и имеет смысл обсудить эти модели в широком ключе. Да, все снежинки различаются, но также верно, что все снежинки похожи друг на друга.
Итак, я выделяю как минимум семь различных типов тестировщиков: административный, технический, аналитический, социальный, эмпатический тестировщик, пользователь и разработчик. Когда я начну углубляться в объяснения, я хочу, чтобы вы поняли следующее: это модель, а не тюрьма. Это кластеры эвристик или – в некоторых случаях – ролей. Ваш стиль работы или ситуация могут подходить для нескольких моделей сразу.
Несмотря на период отпусков, работа над главной конференцией этой осени SQA Days-24 кипит. Уже поступил ряд докладов с очень интересными темами. Также будут участвовать крутые зарубежные спикеры.
Приглашаем присоединиться с докладом. Сроки подачи докладов продлены до 30 сентября.
Согласно CWsites на Mind Eye Web Design, 95% пользователей игнорируют 80% содержания сайта. Эта статистика уже против вас, как же улучшить содержание, дабы убедиться, что пользователи получают от сайта максимум?
В этой статье мы описали 11 советов по улучшению читабельности, удобства и ценности содержания любого сайта.
Нередко бывают ситуации, когда необходимо быстро получить тестовые данные для проверок. И если таких данных нет под рукой, на помощь приходят они — сервисы генерации.
Представляем вашему вниманию небольшую подборку полезных инструментов, которые мы используем в нашей работе.
При изучении любой дисциплины самое сложное/главное понять основы, базовые принципы, на пальцах, на школьных примерах, затем, на этот металлический каркас можно навесить тонны бетонной практики, получившийся железобетонный монолит станет гарантией практически не ограниченного технического роста специалиста. Звучит самоочевидно, не правда ли ..? И тем не менее, субъективный опыт автора в проведении собеседований, а это около ~500 специалистов из стран СНГ, Индии, США в Автоматизации тестирования и сопоставимые цифры в С \ С++ мире, говорит, что даже Senior разработчики в большинстве не понимают «физического смысла» ООП, не могут озвучить базовую формулировку одного из «столпов» - инкапсуляции, хотя знают как на 3 языках, 20 способами реализовать интерфейс, класс и объект, а вот вырасти дальше уже не могут, и вынужденно в течении 20 лет топчутся на месте. Вот это досадное карьерное недоразумение мы и постараемся исправить. IMHO тема будет интересна/полезна самому широкому кругу слушателей, от молодых специалистов в Ручном тестировании до Архитекторов в Автоматизации.