Сертификация istqb. часть 1: быть или не быть?
Содержание:
- Профессия QA Engineer: кто такие и что делают
- Ресурсы для подготовки к собеседованию
- Что такое обеспечение качества
- Роль 6: Supporter
- Кто такой QС Engineer
- тестирование — это
- BE-TESTER
- Что такое процесс обеспечения качества (QA) и чем он отличается от контроля качества (QC)?
- Как стать QA-аналитиком
- Как ты пришёл (-ла) в QA Automation?
- Тестировщики сегодня получают не меньше, чем разработчики
- Карьера и рост
- Кто это?
- Официальный тест на IQ
- Книги на английском языке
- Вывод
- Заключение
Профессия QA Engineer: кто такие и что делают
QA-инженером (Quality Assurance Engineer) называют специалиста, который занимается функциональным тестированием программного обеспечения на всех этапах разработки. Чтобы более детально говорить о Quality Assurance, нужно разобраться с терминологией.
Многие ошибочно думают, что термины Quality Assurance, Quality Control и тестирование – это синонимы. Но это неверное суждение.
- Quality Assurance (QA). QA-специалисты подготавливают и устанавливают стандарты, анализируют качество, выбирают инструменты, предотвращают ошибки и совершенствуют программу.
- Quality Control (QC). Контроль качества продукта отвечает за анализ результатов тестирования, поиск и устранение ошибок. QC-специалисты анализируют код, технические обзоры и проверяют программу.
- Тестирование программного обеспечения (Software Testing). Тестировщики проверяют готовый продукт на соответствия установленным требованиям.
Что должен уметь QA Engineer: основные навыки и обязанности
Теоретические знания и практические умения:
- Понимание цикла разработки ПО.
- Знание видов и уровней тестирования.
- Умение читать техническую документацию.
- Анализировать требования.
- Составлять тестовую документацию.
- Мониторинг и отслеживание правок.
- Написание и доработка сценариев тестирования.
- Составление ТЗ на устранение найденных, после тестирования недочетов.
Английский язык
Английский язык для QA-тестера очень важен. В большинстве случаев заказчики или часть команды находятся в других странах и коммуницировать с ними приходится на английском.
- Баги, которые обнаружил тестировщик, он должен описывать в специальной системе.
- Умение детально описать ошибки и присваивать им приоритетность по устранению.
- Описывать свой путь в программе и указать другие детали, которые помогут разработчикам все подправить.
- Умение работать с тест-кейсами, тест-листами, чек-листами и баг-трекерами.
Дополнительные технологии:
- Умение работать с HTML/CSS, JavaScript, jQuery и HTTP для тестирования web-приложений.
- Чтобы было легче тестировать мобильные приложения, нужно уметь работать с Genymotion, VirtualBox и iOS Simulator.
Владение языками запроса SQL и умение работать с базами данных
Умение работать с языком запроса SQL встречается в каждой вакансии тестировщика. QA-инженерам, которые планируют тестить программы и приложения язык запросов SQL и работа с базами данных будут очень полезны.
Важные качества, на которые нужно обратить внимание при собеседовании QA-инженера
- Аналитический ум и внимательность для обнаружения даже маленьких ошибок.
- Стратегическое и абстрактное мышление, умение моделировать и абстрагироваться от внешних факторов.
- Умение работать с командой, аргументированно объяснять свои решения.
- Перфекционизм, ответственность, усидчивость.
- Умение расставлять приоритеты, находить компромиссы, настойчивость.
Ресурсы для подготовки к собеседованию
Подготовка к собеседованию
- Собеседование для собеседующих (Хабр)
- Погружение в Charles Proxy (Хабр)
- Образ современного тестировщика. Что нужно знать и уметь (Хабр)
- Что должен знать тестировщик бэкенда (Хабр)
- Обратное собеседование (Github)
Telegram-каналы
- https://t.me/qa_ru
- https://t.me/qa_bad_company
- https://t.me/qaevents
- https://t.me/yetanotherqa
- https://t.me/radioqa
Книги
- Тестирование Дот Ком или Пособие по жестокому обращению с багами в интернет-стартапах, Роман Савин
- Тестирование программного обеспечения. Базовый курс
- 5 лучших книг по тестированию ПО от Натальи Руколь
- Книга для начинающих тестировщиков
Что такое обеспечение качества
Конференция QualityConf целиком и полностью посвящена качеству, а не тестированию. Однако при подготовке очередной конференции организаторы провели исследование и задали вопрос своим посетителям: «С чем у вас ассоциируется конференция?».
Как вы все уже, наверное, догадались, главные ассоциации были исключительно с тестированием.
Получается, что сегодня, говоря слово «качество», многие слышат «тестирование», и очень часто это функциональное тестирование, хотя понятие качество гораздо шире.
Качество — это определение потребителя, а не определение инженера, не определение маркетинга и не общее определение менеджмента. Оно основано на фактическом опыте клиента в отношении продукта или услуги, измеряется в соответствии с его требованиями — заявленными или неустановленными, осознанными или просто ощущаемыми, технически действующими или полностью субъективными. Качество всегда представляет собой движущуюся цель на конкурентном рынке.
Тестирование — один из способов обеспечить качество продукта. Кроме этого повысить качество продукта можно вводя стандарты кодирования, внедряя новые инженерные практики, дизайн ревью и так далее. Способов обеспечить качество много, но на разных этапах зрелости команд и процессов в компании эти способы дадут разный эффект, об этом необходимо помнить. Но это уже совсем другая история.
Роль 6: Supporter
Мы собираем фидбек от пользователей или заказчика: анализируем, что неудобно, где сложно и чего не хватает. Затем эти предложения и улучшения обсуждаем с заказчиком. После выпуска продукта следим, что пользователи больше не сталкиваются с такими проблемами.
Еще во время поездки на склад я нашла слабые места, на которые жаловались пользователи. Например, система сильно «тормозила» без проверки нагрузки. Клиент ждал по несколько минут, чтобы посмотреть статус заказа или добавить адрес доставки. В итоге он нервничал и жаловался на сервис. Компания теряла клиента.
Мы провели нагрузочное тестирование, выявили слабые места, где система «падает», и составили план для разработчиков. Как мы нагружали систему — в статье «Первые шаги по нагрузке продукта».
Через пару недель мы собрали фидбек от фокус-группы и получили положительный ответ. Процент отказов у компании сократился.
Кто такой QС Engineer
Контроль качества (QC) — часть международного стандарта управления качеством ISO 9000. Суть контроля качества сводится к поиску дефектов и ошибок после создания продукта.
Таким образом, специалист, чья работа крутится вокруг тестирования — это QC Engineer, по-русски, тестировщик.
Должностные обязанности QC Engineer
Примерный обобщенный список:
-
Оценка и внедрение программного обеспечения для тестирования.
-
Проверка продукта на соответствие установленным требованиям и ожиданиям.
-
Настройка автоматического тестирования.
-
Поиск дефектов или ошибок, которые могут подорвать доверие покупателей к вашим продуктам.
-
Проверка, что конечный продукт соответствует стандартам компании, стандартам отрасли, законам.
-
Составление отчетов об испытаниях и проверках.
-
Выявление и документирование ошибок и дефектов, которые необходимо исправить перед выпуском продукта.
-
Выявление и документирование ошибок и дефектов, которые можно исправить после отправки продукта.
-
Тестирование инструкций, гайдов, документации.
-
Работа со специалистами по обеспечению качества.
-
Оценка отзывов и жалоб клиентов — поиск и рекомендации решений, которые “сделают их счастливыми”.
-
Мониторинг поступления на рынок только высококачественной продукции.
Кто такой QA Engineer
Обеспечение качества (QA) — часть международного стандарта управления качеством ISO 9000, которая помогает компаниям соответствовать требованиям, удовлетворять потребностям клиентов и постоянно улучшать свои процессы и процедуры.
Должностные обязанности QA Engineer
Примерный обобщенный список:
-
Планирование, разработка и внедрение политики, процессов и процедуры обеспечения качества.
-
Документирование и обновление типовых инструкций и лучших решений (best practices).
-
Проверка процессов, процедур и документации на соответствие правилам и стандартам.
-
Мониторинг текущих процессов с целью их улучшения.
-
Обучение производственных и инженерных групп соблюдению установленных процессов и процедур.
-
Анализ первопричин и внедрение решений, направленных на устранение проблем, обнаруженных в текущих процессах и процедурах.
-
Сбор и оценка отзывы клиентов.
ВАЖНО. Даже если в компании есть четко определенная позиция QA Engineer, обеспечивать качественный процесс, создавать качественный продукт остается обязанностью каждого участника команды
В общем, QA Engineer, если такой есть на проекте, человек, который прицельно отследит и поможет подтянуть проседающий процесс разработки: направит, надоумит, отправит учиться или подкинет инструментов и идей.
тестирование — это
- проверка соответствия программы требованиям,
- осуществляемая путем наблюдения за ее работой
- в специальных, искусственно созданных ситуациях, выбранных определенным образом.
Отсюда и далее будем считать это рабочим определением «тестирования».
Общая схема тестирования примерно следующая:
- Тестировщик на входе получает программу и/или требования.
- Он с ними что-то делает, наблюдает за работой программы в определенных, искуственно созданных им ситуациях.
- На выходе он получает информацию о соответствиях и несоответствиях.
- Далее эта информация используется для того, чтобы улучшить уже существующую программу. Либо для того, чтобы изменить требования к еще только разрабатываемой программе.
Это весьма близко к определению, данному в SWEBOK, хотя есть несколько отличий. Например, в нашем определении нет слова «тест».
Определение тестирования по SWEBOK
звучит следующим образом:
Тестирование – это проверка соответствия между реальным поведением программы и ее ожидаемым поведением на конечном наборе тестов, выбранных определенных образом.
А мы с вами говорили о некоторых специальных искусственно созданных ситуациях, выбранных определенным образом. Вот эти специальные, искусственно созданные ситуации, и есть ТЕСТЫ. Чуть позже мы это сформулируем еще более точно в виде определения термина «тест», а пока пойдем дальше.
BE-TESTER
Школа тестировщиков ПО be-tester — это школа с индивидуальным подходом к каждому ученику, где обучение проходит в небольших группах в формате интенсива, сочетая в себе идеальное соотношение теории и практики (на реальных проектах). Курс включает в себя не только базовые навыки, но и более продвинутые темы, как MySQL, API, HTML и CSS, а также автоматизацию на Python при помощи Selenium.
Преимущества:
1. Много практики на различных реальных проектах объемом 50 часов, полученный опыт можно указать в резюме.
2. Личный чат с преподавателем где всегда можно задать любой вопрос и получить быстрый и качественный ответ. Вопросы можно задавать без ограничений
3. Формат курса интенсивный. После изучения каждого урока, вы закрепляете знания тестами, практикой и интересными заданиями. Во время всего курса школа тестировщиков ПО Be-tester всегда на связи и каждый день работает над вашими знаниями и навыками. Все материалы доступны навсегда.
4. Уроки проходят в режиме живых трансляций (в случае пропуска можно посмотреть в записи)
5. Обучение навыкам автоматизации для максимального конкурентного преимущества при трудоустройстве
6. Авторская программа курса рассчитана на любой уровень подготовки и возраст
7. Стажировка в компаниях партнерах, рекомендательные письма от школы, помощь в составлении резюме, консультации по собеседованиям.
Если вы все еще думаете, подходит ли вам данная сфера или хотели бы попрактиковаться, то школа тестировщиков ПО Be-tester приглашает вас на бесплатный практический вебинар “Как за 1 месяц войти в IT”в формате живой трансляции.
В вебинар входят: теория, практика, блок о профессии + рубрика с ответами на любые вопросы участников. Доступен в любой точке мира.
Что такое процесс обеспечения качества (QA) и чем он отличается от контроля качества (QC)?
Процесс обеспечение качества при разработке программного обеспечения или QA (quality assurance) — это процесс, который предотвращает появление ошибок в конечном продукте и гарантирует, что компания выпустит по-настоящему качественное приложение. Процесс QA — это больше, чем просто контроль качества и тестирование. В то время как контроль качества (QC) сосредоточен на проверке конечного продукта, QA является частью всех этапов и стадий разработки программного обеспечения. Другими словами, QA — это комплекс мероприятий, направленных на предотвращение дефектов и ошибок, а QC — на их выявление. Правильно настроенный процесс QA гарантирует, что все члены команды будут работать эффективно, время, необходимое для разработки, сократится, а затраты снизятся.
Конечно, в разных компаниях процесс QA может отличатся. Однако, как правило, основные стадии и этапы совпадают. И если вы с ними знакомы, вам проще будет разобраться во всех этих новых терминах и концепциях.
Как стать QA-аналитиком
Итак, потолок достигнут, вы проработали мануальным тестировщиком один-два года и ощутили, что ваше предназначение — это именно аналитика, а не DevQA. Предлагаем действовать по такому плану:
1. Возьмите ознакомительный курс по аналитике и почитайте литературу:
- К. Вигерс, Д. Битти «Разработка требований к программному обеспечению»;
- А. Коберн «Современные методы описания функциональных требований к системам»;
- Д. Леффингуэлл «Принципы работы с требованиями к программному обеспечению. Унифицированный подход».
2. Проанализируйте проект, на котором работаете сейчас.
От каких тяготящих задач вы могли бы избавить своих коллег: написание первичной документации, финальное согласование или проведение части митингов.
3. Подойдите к менеджеру проекта с конкретным предложением: «Я хочу развиваться как QA-аналитик, в связи с этим готов взять на себя следующие задачи…»
Именно такой подход — самый правильный. Часто сотрудники — и не только из QA — ставят вопрос иначе: «Я хочу развиваться, скажите мне, как». Это плохое начало.
Во-первых, потому, что вы пришли к менеджеру создать ему новую головную боль. Не надо так делать. Дайте ему личную выгоду: разгрузите от мелких задач, и он станет вашим наставником на пути к новым карьерным вершинам. Сразу начинайте думать и действовать в соответствующем духе, приносить людям пользу.
Во-вторых, формулируя вопрос открыто, вы вообще ставите под сомнение свою способность к аналитике, ведь в этой профессии очень важно четко строить вопрос таким образом, чтобы менеджеру (а в будущем — клиенту) оставалось ответить лишь «да» или «нет».
В итоге вы можете вырасти в менеджера проектов. Это логично: ведь принимая на себя аналитическую работу, тестировщик становится ближе к клиенту, начинает участвовать в созвонах, высказывать свое мнение, принимать решения по ходу проекта и видеть его целиком, с высоты птичьего полета.
Итак, аналитика — это путь, открытый мануальному тестировщику при следующих условиях:
- QA-аналитика востребована в компании;
- за время работы в тестировании вы приобрели основные навыки, и вам остается развить их на новом уровне;
- вы прошли ознакомительный курс и проштудировали несколько книг по аналитике;
- вы предложили руководителям взять на себя новые задачи, разгружающие коллег.
Как ты пришёл (-ла) в QA Automation?
АЛЕКСЕЙ БЕДУНКЕВИЧ: Я стартовал как обычный ручной QA на последнем курсе БГУИР (февраль 2010-го), скорее это планировалась как временная подработка, пока я буду делать тестовое задание для одной компании, занимавшейся разработкой систем компьютерной безопасности. К моменту выхода у меня был неплохой опыт работы с C/C++, ASM, .Net. Я поработал какое-то время ручным тестировщиком и через пару лет незаметно для себя перешел в авто. Просто однажды меня поставили на проект, спросили: «Сможешь?». «Смогу», – ответил я. Вот примерно так в 2013-м я начал карьеру автоматизатора. Потом было много проектов на Java/C#/Python/JS.
Летом 2019-го я перешел в должность Group Manager, и на данный момент у меня в группе тестирования 35 человек.
АЛЕКСЕЙ ПОБОЛЬ: Поработав мануальщиком на протяжении 3 лет, устал от монотонности, хотелось упростить себе работу через автотесты. Основной мотив – попробовать что-то новое, изучить язык программирования.
Тестировщики сегодня получают не меньше, чем разработчики
Тестировщики сегодня получают не меньше, чем разработчики. Разница практически неощутима. Если средняя заработная плата в России около 40 000 рублей, то на старте карьеры в качестве инженера по тестированию в Москве вы сможете получать примерно в полтора-два раза больше.
Через год-полтора специалиста уже можно считать опытным, а значит, его стоимость на рынке возрастает, а заработная плата будет варьироваться в пределах 100 000 — 140 000 рублей.
Значение профессии
Основная задача инженера по тестированию — сделать продукт более качественным. Под качеством мы понимаем некий набор параметров, который пользователь хочет видеть в продукте. Тестировщик следит за тем, чтобы реальный продукт максимально совпадал с тем, каким его хотели сделать изначально.
Профессия инженер по тестированию от «Яндекс.Практикума»
Для кого:
— для тех, кто хочет получить новую профессию
Длительность: 4 месяца
Сколько стоит: вводный курс — бесплатно, далее 15 000 рублей в месяц или 50 000 рублей при единоразовой оплате.
Подробнее здесь.
Профессия тестировщик от Skillbox
Для кого:
— для новичков в IT
— для начинающих тестировщиков
Длительность: 586 онлайн-уроков
Сколько стоит: 3 месяца бесплатно, далее 7415 рублей в месяц
Подробнее здесь.
Профессия тестировщик ПО от «Нетологии»
Для кого:
— для тех, кто хочет получить профессию в ИТ
— для тех, кто работает в техподдержке
— для начинающих тестировщиков
Длительность: 6 месяцев
Сколько стоит: 77 900 рублей
Подробнее .
Тестировщик в BI Group
Опыт работы: 1-3 года
Требования:
— понимание модели разработки ПО
— знания в классификации тестирования
— опыт тестирования веб- или мобильных приложений
— опыт работы с баг-трекинговыми системами
— умение писать простые SQL-запросы.
Подробнее здесь.
Тестировщик ПО в «Like Центр»
Опыт работы: не требуется
Заработная плата: 40 000 — 60 000 рублей
Требования:
— понимание особенностей тестирования клиент-серверных, мобильных и web-приложений
— понимание жизненного цикла разработки ПО
— умение четко излагать свои мысли
— аналитический склад ума, ответственность и целеустремленность.
Подробнее здесь.
Асессор-тестировщик в «Яндекс»
Опыт работы: не требуется
Требования:
— опыт ручного тестирования сервисов и приложений
— наличие собственного мобильного устройства и компьютера и готовность выполнять задания на них
— способность к монотонной деятельности
— наличие надежного и быстрого интернет-канала
— широкий кругозор во всем, что связано с интернетом.
Подробнее здесь.
Карьера и рост
Тестирование наряду с бизнес-анализом или техническим писательством — действительно одна из наименее сложных точек входа в ИТ (хотя этот путь тоже не из лёгких).
Тестировщику необязательно обладать глубокими техническим навыками, знать языки программирования или даже иметь математический склад ума. Хотя ситуация меняется и требования к кандидатам растут. Говорят, 10-15 лет назад ИТ-компании брали в тестировщики чуть ли не людей с улицы. Лет 7 назад (когда я сам приходил в профессию) новичку уже надо было крепко владеть теорией. Сегодня на собеседованиях чаще проверяют базовые технические навыки: работу с базами данных и сетями, администрирование.
Если говорить о развитии внутри профессии, то для функционального тестировщика самая близкая специализация — это автоматизатор. Когда-то я и сам прошёл такой путь. Потом некоторые автоматизаторы уходят в «чистые» разработчики или становятся супер-крутыми технарями-тестерами (есть даже такое понятие, как тест-архитектор). Порой функциональные тестировщики после дополнительного обучения переходят в параллельную ветку безопасности или нагрузочного тестирования.
Многие тестировщики, которые меньше склонны к технической работе, становятся бизнес-аналитиками. Ещё один «нетехнический» путь — это менеджерские позиции: управление проектами или командой.
За последние месяцы ситуация на рынке труда радикально изменилась из-за эпидемии коронавируса. Ещё два месяца назад спрос на начинающих тестировщиков был большой, и он сохранялся на протяжении нескольких лет.
Конечно, в условиях кризиса позиция тестировщика становится уязвимой. Без разработчика невозможно написать ПО, а без тестировщика худо-бедно можно. Мне кажется, в этой ситуации лучше всего защищены «миксы» — те самые универсалы, о которых я говорил выше. Они способны быстро перестраиваться с одних задач на другие. Если проекту станут не нужны мануальщики, то «микс» всегда может переключиться на автоматизацию процессов — и наоборот.
Курсы, чтобы стать тестировщиком
- Специализация Software Testing and Automation
- Курс-симулятор Тестировщик программного обеспечения
- Автоматизация тестирования на JavaScript
- Нагрузочное тестирование
- QA Lead
Кто такой DevOps. Обзор изнутри от Виктора Ведмича
По теме
Кто такой DevOps. Обзор изнутри от Виктора Ведмича
Кто такой Data Scientist. Обзор изнутри от Арсения Кравченко
По теме
Кто такой Data Scientist. Обзор изнутри от Арсения Кравченко
23 популярных курса по Data Science от Coursera
По теме
23 популярных курса по Data Science от Coursera
Кто это?
-
Тестер — начинающий тестировщик, который проводит, в основном, ручное тестирование по заранее описанным тест-планам. Плохое название, на которое ребята часто обижаются.
Вот это тестер, а парни и девчонки всё же тестировщики! (минута айтишного шовинизма) - Инженер по тестированию — специалист уровня от junior до lead, который осуществляет разнообразные виды тестирования, в том числе автоматизированное, самостоятельно пишет тест-планы, в некоторых случаях даже даёт рекомендации по исправлению багов или исправляет их самостоятельно (в небольших компаниях).
История. В одну компанию пришла новенькая девочка, которая никак себя не проявляла, тихо изучала софт и принципы его работы с разным оборудованием. Когда она только-только приступила к тестированию, от большого и злого федерального клиента прилетел critical (самый злой баг, хуже только блокирующий) — ПО отказывалось закрываться. Перелопатили весь код, орали друг на друга, проверили все соединения и т.д. Через три часа метаний девочка пропищала:
— А тут крестик неактивный.
Действительно, просто не работала одна-единственная и весьма очевидная функция. Но профессионалы забурились в дебри, а увлечённый дилетант сразу заметил ненормальное поведение.тестеры
Официальный тест на IQ
Международный IQ Test — это простая и элегантная система оценки, которую можно использовать
в режиме онлайн. Ее легко понять, весело принять и трудно освоить. Это связано с тем,
то что перед вами
настоящий тест,
который призван бросить вам вызов и дать точный результат.
Ответы на все вопросы позволят вам быстро определить текущий уровень вашего IQ. Ограничение по
времени составляет всего 24 минуты, чтобы ответить на все 35 вопросов. Вы заметите, что некоторые
вопросы будут легкими, а другие – почти невозможными, при этом, все полностью зависит от того,
как вы ответите на каждый вопрос.
Средний уровень интеллекта составляет 100 баллов. К тому же, вы сможете узнать, насколько хорошо
справились сразу же, как только закончите последний вопрос. Как бесплатная, так и платная версии
предлагают один и тот же тип вопросов. Основные различия кроются в результатах, которые вы сможете получить.
Бесплатная версия
Вы получите примерную оценку вашего интеллекта (средний уровень, низкий или высокий уровень интеллекта),
чтобы вы понимали примерное положение вашего интеллекта на общей шкале.
Платная версия
Заплатив всего $6.99 (USD), вы получите отчет в формате PDF, который включает в себя точный результат,
а также правильные ответы вместе с логическими объяснениями того, как решать головоломки.
Кроме того, вы сможете сравнить свой результат с данными жителей нашей планеты.
Книги на английском языке
Cem Kaner, James Bach, Bret Pettichord
«Lessons Learned in Software Testing»
Книга привлекает практической направленностью: авторы с богатейшим опытом собрали 293 урока, где коснулись основных вопросов тестирования ПО. Будет полезна и для новичков, и для опытных специалистов.
Авторы дают конкретные практические советы по всем аспектам тестирования: планирование стратегии, методики и техники, правила написания отчетов, автоматизация, взаимодействие разработчиков и тестировщиков, документирование, управление командой и карьерный рост. Из-за особенности поурочной структуры ее можно читать с любого места.
Boris Beizer
«Software Testing Techniques»
Классический учебник Бориса Бейзера, хорошо известный за рубежом и у нас. Его отличает целостный и методичный подход к изложению информации, понятный язык и широкий охват тем тестирования.
Пособие не только поможет новичкам освоить профессию, но и останется с ними в качестве настольной книги тестировщика на долгие годы.
Ajay Balamurugadas, Sundaresan Krishnaswami
«Mobile Testing: Ready Reckoner»
Книга содержит советы и четкие инструкции по тестированию мобильных приложений от практикующих специалистов. С помощью их рекомендаций, скриншотов и понятных объяснений начинающий легко разберется в процессе тестирования продуктов для операционных систем Android и iOS.
в формате PDF
Mike Andrews, James A. Whittaker
«How to break web software»
Базовая книга об атаках в тестировании программного обеспечения. Подходит и начинающим, и опытным специалистам, но первые испытают сложности из-за трудного языка. Для вторых же она идеальна и даст множество полезных знаний.
Ее можно перечитывать много раз и находить новые способы решения насущных задач. Автор рассказывает о различных типах атак: на сервер, на клиент, state based и других. Описание атаки состоит из вводной части, сферы применения и инструкции о том, как ее проводить.
James A. Whittaker
«How to Break Software Security»
Вторая книга Витакера — пошаговое руководство по тестированию безопасности приложений. Ее лучше читать после «How to break web software».
Подходит уже работающим специалистам с базовыми навыками в тестировании в целом, но не знающим ничего о защищенности.
Автор рассказывает о верхнеуровневых классах проверок, например, на уровне кода или GUI, и приводит 19 атак на защищенность приложения. Каждое описание атаки или инъекции состоит из вводной части, описания случаев применения и руководства по нему.
Gerald M. Weinberg
«Perfect Software and other illusions about testing»
Очень интересная книга, которая понравится всем уже работающим в команде тестировщикам, а новичков может спустить с небес на землю. Увы, только в учебниках и абстрактных компаниях проекты всегда задокументированы, а в архитектуре царит полный порядок. Эта книга рассказывает о жестокой реальности и развенчивает иллюзии в тестировании.
Автор приводит реальные типичные ошибки в подходах, а учиться на ошибках — самое полезное дело. В совместной работе специалисты часто переводят стрелки друг на друга и отказываются фиксить и документировать баг, ссылаясь на то, что это не их зона ответственности. Что с этим делать и как с этим жить — в том числе рассказывает Gerald M. Weinberg.
Мы предложили вам 15 испытанных временем книг по тестированию программного обеспечения, которые помогут освоиться в этой профессии. А еще рекомендуем наш обучающий курс по тестированию. Здесь в доступной интерактивной форме под руководством наставников вы изучите актуальный материал, научитесь использовать его на практике и получите новую профессию с возможностью трудоустройства.
Вывод
QA лид в Miro — это в первую очередь человек с системным мышлением, который измеряет текущее состояние качества со всех сторон (качество продукта, процессов разработки, техническое качество), определяет видение и создаёт стратегию как направленное движение к видению.
Это человек, который проверяет на прочность всё вокруг: процесс планирования и его контроль, архитектуру, тестовые окружения, релизы и действия на проде, инциденты, тестирования на проде, health monitoring и многое другое.
Это стратег, который отвечает за качество огромной части продукта или проекта. Он может фокусироваться только на улучшении и поддержке качества в стриме и обладает компетенциями, чтобы видеть картину целиком.
Это технический эксперт в области тестирования, так как высокая доля автоматизации требует погружения в нюансы реализации продукта.
Заключение
Независимо от того, какие подходы или методы использует компания, конечная цель всегда одна — предоставить клиентам продукт высочайшего качества. Хорошо налаженный QA процесс помогает снизить затраты на разработку и улучшить качество программного обеспечения. И вы можете внести свой вклад в этот процесс.
И вы сможете внести свой вклад в этот процесс. Как видите, придётся многому научиться. Но когда вы понимаете основные концепции, методы и инструменты, разобраться во всём этом не так уж сложно.
Наши краткосрочные курсы помогают таким же людям, как вы, преодолеть свои первые страхи и начать строить новую карьеру в качестве тестировщика. Изучение основ под чутким руководством наших опытных преподавателей — это вопрос нескольких недель.