Archives

Новый продвинутый тренинг по тестированию ПО

Новый продвинутый тренинг «Основы тестирования ПО» — старт уже скоро!

Время отличных новостей!

Уже в июле мы запускаем новый продвинутый онлайн-тренинг «Основы тестирования ПО»!

На этом тренинге вы сможете получить углубленные знания из сферы тестирования и открыть для себя новую страницу в QA.

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

Для студентов, которые ранее обучались на тренинге «Основы тестирования ПО» и получили сертификат, тестовое задание выполнять не требуется.

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

Кроме теоретического материала, вы узнаете многое из практики ведущих QA-инженеров. Вы научитесь продвинутым приемам работы с различными корпоративными системами (такими, как Wiki и JIRA), которые используются в IT-компаниях. Тренинг поможет вам адаптироваться к новым сложным проектам и использовать теоретические знания в ходе решения практических задач.

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

Лучшие студенты тренинга получат рекомендательное письмо, а также предложение о стажировке в одной из ведущих QA-компаний в Восточной и Центральной Европе.

Узнать подробности и оставить заявку можно на странице продвинутого тренинга для тестировщиков.

Мы ждем вас, чтобы поделиться самым интересным из мира тестирования!

Тестировщик на собеседовании

Собеседование на должность инженера по тестированию ПО: логические задачи

Собеседование на должность QA Engineer, как правило, состоит из нескольких этапов. Сначала HR-специалист попросит объяснить, почему вы хотите заниматься тестированием и почему именно вы подходите на эту должность.

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

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

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

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

Потенциальные логические задачи на собеседовании тестировщика

Логические задания помогают техническим и HR-специалистам сформировать представление о том, что за кандидат находится перед ними.

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

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

Задание от Microsoft

Есть 2 мотка верёвки. Если поджечь каждый с одной стороны, моток сгорит в течение часа. Как отмерить 45 минут, используя два таких мотка веревки? Веревку нельзя никак делить.

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

Головоломка от Google

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

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

Задание от Adobe

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

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

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

Веревка вокруг экватора

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

Разгадка. Решить задание можно с помощью математики. Как вы помните из курса школы, длина экватора – 40 075 км. Радиус окружности определяется по формуле R = L/2π = 40075000/2х3,14 = 6381369,43 м. Увеличив длину еще на десять метров, получаем число 6381371,02 м. Поскольку величина зазора – 1,59, человеку легко удастся пройти через него.

Сложение чисел

Столетие назад преподаватель попросил рассчитать сумму всех целых чисел в диапазоне от одного до ста. Никакой техники тогда не было, ученики просто складывали числа между собой. И лишь один из них моментально справился с решением. Это был Карл Гаусс, будущий математик. Какое решение он предложил?

Разгадка. Карл использовал сорок девять пар чисел: девяносто девять и один … пятьдесят один и сорок девять. При сложении каждой пары получалось сто, также было еще два числа без пары – пятьдесят и сто. Таким образом: 49х100+50+100=5050.

Нарисовать дом

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

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

Драже

Почему глазурь на M&M’s идеально гладкая?

Разгадка. В этой головоломке правильный ответ не так уж и важен. Главное – посмотреть, как вы будете использовать воображение и что станете делать, если вдруг попадете на производство.

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

Форма люка

Почему канализационные люки имеют круглую форму?

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

Необычное высказывание

В чем заключается уникальность английского фразы ‘The quick brown fox jumps over the lazy dog?’

Разгадка. Данное задание направлено на то, чтобы проверить уровень вашей внимательности. В высказывании собраны все английские буквы.

Как подготовиться к таким задачам?

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

  • Регулярно практиковаться

Чем больше задач вы решите, тем быстрее вы справитесь на собеседовании. А вот полагаться на удачу не стоит. Тем более, что волнение и стресс могут дать о себе знать в самый неподходящий момент.

  • Разбирать каждую задачу

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

  • Читать форумы

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

Итог

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

Помните, что главная цель технических и HR-специалистов – не в том, чтобы получить от вас единственно правильное решение.

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

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

Инженер по тестированию ПО: что нужно знать начинающим специалистам

Только закончили университет и ищете себя в профессиональном плане? Хотите получить востребованную профессию с возможностью быстрого карьерного роста?

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

К тому же, проработав всего пару лет, вы уже сможете понять для себя, в каком направлении вы хотите развиваться дальше, будь то автоматизация или разработка ПО. Вариантов много!

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

Кто такой тестировщик и чем он занимается?

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

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

Инженер по тестированию – это сотрудник, который ищет дефекты в продукте и отвечает за его корректную работу.

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

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

Что нужно для успешного трудоустройства?

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

По части теории вы можете ознакомиться с материалами по тестированию в интернете – статьи, книги, форумы, блоги.

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

Еще один важный момент – владение английским языком хотя бы на уровне Pre-Intermediate. Поскольку с большой долей вероятности вы попадете именно на англоязычный проект.

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

Преимущества и недостатки профессии тестировщика

В профессии тестировщика есть свои плюсы и минусы. Чаще всего тестирование привлекает молодых специалистов по нескольким причинам:

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

Подробнее о том, за что тестировщики любят свою работу, можете прочитать в интервью с QA-инженерами.

Однако у профессии тестировщика есть и свой недостаток – некоторое однообразие рабочего процесса.

Карьерные перспективы инженера-тестировщика

Работа в сфере тестирования дает несколько возможностей для развития карьеры.

Первый и наиболее классический вариант – переход от позиции младшего к позиции ведущего QA-инженера. Рассмотрим каждую ступень подробнее:

Джуниор

Специалист по тестированию с минимальным опытом работы или даже без него получает свою первую квалификацию – Junior QA Engineer. На начальных этапах вам нужно будет научиться выполнять ручные тесты, работать с баг-трекинговыми системами, расширять технический кругозор.

Миддл

Следующий этап в карьере наступает спустя несколько лет работы в компании, вы получаете квалификацию Middle QA Engineer. Вы должны будете самостоятельно разрабатывать тестовые сценарии и постепенно погружаться в автоматизированное тестирование. Поэтому на данном этапе вам уже нужно будет учиться разбираться в коде программы.

Синьор

По прошествии 4 лет работы вам могут предложить должность Senior QA Engineer. Помимо всех вышеперечисленных задач, в должностные обязанности старшего инженера по тестированию будут входить планирование процесса тестирования и контроль работы молодых сотрудников.

Лид

Ведущий специалист (Lead) должен не только проявлять глубокие знания всего процесса тестирования, но и демонстрировать навыки управления проектами, руководить тестированием среди малых групп специалистов.

Зарплата джуниора, как правило, составляет не менее 400 USD и постоянно растет по мере достижения новой квалификации. Лид может рассчитывать на получение 2000 USD ежемесячно.

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

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

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

Итог

Как видите, выбрав сферу тестирования ПО, в дальнейшем вы получите много вариантов развития карьеры.

Главное – усвоить основы работы тестировщика, постоянно углублять свои знания и прилагать максимум усилий в достижении вашей цели.

Тогда и результат не заставит себя ждать!

Уже записались на курс по автоматизации тестирования? Нет? Еще есть время

Напоминаем, что запись на курсы по автоматизации тестирования ПО от QA Academy продолжается.

Автоматизация тестирования ПО – очень популярное и востребованное направление в тестировании. Ценность автоматизации – уверенность в том, что программное обеспечение качественное и не содержит дефектов. Соответственно, высок уровень заработной платы автоматизатора, а также перспектив для роста.

Курсы от QA Academy – действенный шаг для начала работы в тестировании программного обеспечения.

Курсы состоят из двух уровней – базового «Автоматизация тестирования ПО. Фундаментальные основы» и профессионального «Автоматизация тестирования ПО. Разработка решения по автоматизации тестирования».

Не важно, кем вы сейчас работаете: ручными тестировщиками, разработчиками, филологами, докторами, бухгалтерами – значения не имеет. Базовый курс подойдет всем, кто знает Java.

Для участия в профессиональном курсе необходим опыт работы с Selenium Webdriver, TestNG, а также Git. Однако, пройдя базовый курс, полученных знаний и опыта работы будет достаточно для участия в профессиональном.

Курсы можно проходить как очно – в городе Санкт-Петербург, так и онлайн – в любой точке России, где есть интернет.

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

В рамках курса будут затронуты темы, актуальные для современного автоматизатора тестирования ПО, шагающего в ногу со временем.

С детальной информацией о программе курсов и процессе обучения вы можете ознакомиться на странице тренингов по Автоматизации тестирования ПО.

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

Хотите работать в автоматизации тестирования ПО? Записывайтесь на курс.

Увидимся в сентябре!

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

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

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

Какие ошибки допускают ручные тестировщики?

  1. Упрощают тест-кейсы так, что их нельзя выполнить пошагово.

Вот пример такого, излишне подробного, тест-кейса:

«Выберите юзера в таблице – откроется контекстное меню с опциями Copy, Edit, Delete.  Проверьте, что все опции работают».

И как это автоматизировать? Если автоматизатор нажмет Delete, то, во-первых, закроется контекстное меню. И его придется открыть заново. А это нигде не прописано. Во-вторых, пользователь будет удален. Чтобы проверить другие опции, понадобится еще один пользователь. И опять же, это нигде не прописано.

  1. Ссылаются в одном шаге на другой шаг.

Нельзя в 11-м шаге, например, писать «Повторите шаги 1-10 для пользователя manager».  Либо это проверка вообще не нужна, либо выносите ее в отдельный тест. Такие ссылки неоправданно увеличивают время выполнения теста в 2 раза.

  1. Допускают ветвления в тест-кейсе.

В предыдущем посте мы говорили о том, что ветвления недопустимы. Вот пример: «Зайти на страницу Users. Проверить, что таблица с колонками Name, Email, Type отображается. Если пользователей нет, проверить что таблица отсутствует».

Так делать не следует. У теста должен быть только один путь, и это путь определяется предусловиями.

  1. Присылают на автоматизацию неактуальные тест-кейсы.

Проверьте тест-кейсы перед тем, как отдавать его на автоматизацию. Помните, что автотесты создаются гораздо медленнее тест-кейсов.

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

Подведем итог. Как осчастливить автоматизатора своими тест-кейсами?

  • Пишите тест-кейсы в тест-трекинге;
  • Делайте их подробными;
  • Избегайте повторяющихся проверок и шагов;
  • Описывайте в preconditions все вспомогательные данные для теста;
  • Распределите тест-кейсы так, чтобы начать автоматизацию с самых важных проверок;
  • Не объединяйте много проверок в 1 тест;
  • Ведите тест-кейс по кратчайшему пути

Возможно, вы спросите: почему нужно подстраивать тест-кейсы под автотесты, а не наоборот?

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

Увы, многие тест-кейсы, которые пишут ручные тестировщики, нельзя заавтоматизировать. Их приходится переделывать. А у автоматизаторов на это не хватает ни навыков, ни времени.

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

Поэтому вся надежда на вас – ручные тестировщики.

Дадим автоматизации хорошие тест-кейсы – получим хорошие автотесты и качественно протестированный продукт.

Пишем тест-кейсы, которые пройдут испытание автоматизацией. Часть 2

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

1. Обеспечьте уникальность шагов и проверок

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

Например, у вас есть диалоговое окно, которое содержит кнопку Close. Не нужно каждый раз, когда открывается диалоговое окно, прописывать «Кнопка Close присутствует». Достаточно сделать это в одном тест-кейсе.

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

Пример:

Шаг 1 – Залогиньтесь под админом.

Ожидаемый результат – пользователь залогинен.

Шаг 2 – Перейдите на вкладку «Companies».

Ожидаемый результат – «Companies» открыта.

Так можно написать только в одном тест-кейсе. В остальных уберите ожидаемый результат, потому что там уже нет никакой уникальной проверки.

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

В итоге:

  • Тесты будут выполняться быстрее;
  • Меньше времени уйдет на автоматизацию и поддержку;
  • Баг не помешает выполнению нескольких автотестов.

2. Пишите подробные предусловия (Preconditions)

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

При тестировании вручную инженер редко задумывается о предусловиях для выполнения теста, а вот для автоматизации они важны. Очень часто без наличия подробных Preconditions невозможно понять, как выполнить тест.

Рассмотрим пример.

Допустим, у нас есть тест-кейс на редактирование пользователя “Edit User”.

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

Решение: прежде чем редактировать пользователя, автотест должен его создать!

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

Поэтому, записываем в preconditions “Пользователь создан”. Если для теста важны какие-то параметры пользователя, указываем и их.

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

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

3. Оптимизируйте размер тест-кейса

Какого размера должен быть тест кейс для автоматизации? Однозначного ответа нет.

Рекомендуем придерживаться следующего подхода:

1) Один тест – одна значимая проверка.

Например, проверить что пользователь может быть отредактирован.

2) После значимой проверки можно добавить несколько незначимых, если они используют те же предусловия и не увеличивают время выполнения теста значительно.

3) Если есть неделимая последовательность шагов – прописать их в одном тест-кейсе.

Например, у нас есть онлайн-магазин. Необходимо написать тест-кейс для следующих шагов: перейти на вкладку товаров, выбрать товар, добавить в корзину, сравнить сумму, оформить покупку. Все действия выполняются последовательно, нет смысла дробить тест-кейс.

4. Используйте кратчайший маршрут выполнения тест-кейса

Ведите тест кейс по максимально короткому пути. Что это значит?

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

Как ускорить работу автотеста? Задача ручного тестировщика продумать тест-кейс, найти кратчайший маршрут чтобы минимизировать все лишние действия автотеста.

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

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

Как писать тест-кейсы, которые пройдут испытание автоматизацией. Часть 1

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

Ведь успех проекта по автоматизации напрямую зависит от качества тест-кейсов, которые пишут инженеры по ручному тестированию.

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

Только начинаете учиться на тестировщика? Тем более продолжайте читать: ведь чем большему вы научитесь до начала своей первой работы, тем меньше шишек набьете!

Рекомендации, которые вы здесь прочтете, можно смело применять на любом проекте за исключением трех случаев:

  • Если вместо тест-кейсов вы пишете Gherkin-сценарии.
  • Если вы пишете тест-кейсы с использованием keyword-driven подхода.
  • Если у вас вместо тест-кейсов используется Test Survey или какая-то другая менее подробная документации и при этом у вас на проекте нет автоматизации.

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

Хороший автотест должен обладать следующими качествами:

  1. Быстрая скорость выполнения. На реальном проекте количество автотестов может доходить до нескольких сотен, а время выполнения и анализа ограничиваться парой часов. Здесь ценится каждая сэкономленная минута.
  2. Стабильность. Если багов в приложении нет, тест должен всегда проходить. Это очевидно, но не всегда легко достижимо.
  3. Независимость тестов друг от друга. Это значит, результат одного теста не влияет на результат других. Даже если тесты выполняются одновременно (например, в разных браузерах), они не должны мешать друг другу.
  4. Самодостаточность. Автотест не должен зависеть от каких-либо данных, которые в любой момент могут исчезнуть или измениться.
  5. Соответствие автотеста тест-кейсу. Каждый шаг автотеста должен быть таким же, как и в тест-кейсе. Только так вы сможете быстро исследовать результаты автотестов, находить баги, обновлять тесты.

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

Но перед тем, как перейти к рекомендациям по написанию тест-кейсов, поговорим о документации. Ведь любой проект по тестированию начинается с нее.

Выбор тестовой документации

На проектах по тестированию могут использоваться следующие виды документации: Acceptance Sheet, Test Survey или тест-кейсы.

Нас интересуют проекты с тест-кейсами, поскольку это самый подробный вид документации. Acceptance Sheet и Test Survey не годятся для автоматизации. Имея на руках Test Survey, автоматизатор, какой бы он опытный ни был, не сможет продумать шаги для автотеста, рискует пропустить важные проверки. А значит, тест не выполнит главной задачи – не сможет отловить дефекты.

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

Ну и еще один самый распространенный вопрос.

Как хранить и обновлять тест-кейсы?

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

Надеемся, что вы знаете, чем тест-трекер отличается баг-трекера. Если нет, поясним.

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

Тест-трекер имеет более широкую функциональность. Его основные функции следующие:

  1. проставление и хранение результатов прогонов теста (т.к. тесты прогоняются регулярно, на разных сборках приложения, окружениях, важно хранить информацию о предыдущих прогонах);
  2. возможность проставления результатов теста автоматически после прохождения автотеста;
  3. удобная форма записи шагов и ожидаемых результатов;
  4. отдельная система управления (можно назначать людей, кто будет проверять конкретные тесты, компоновать тест-кейсы в наборы для различных случаев);
  5. тест-кейсам присваиваются различные статусы, они не назначаются на разработчиков.

Часто тест-трекинговая система совмещена с баг-трекинговой.

Например, в TFS есть все: система хранения тестов, отслеживания дефектов и множество других инструментов для тестирования и управления проектом. JIRA используется как баг-трекинговая система, а для тест-трекинга можно использовать специальный плагин Zephyr.

Итак. Отдаем предпочтение тест-трекинговым системам (TTC). Никаких Excel-файлов. Excel-файл с тест-кейсами – это пережиток прошлого. К сожалению, некоторые команды этим пережитком до сих пор пользуются.

Вполне вероятно, у вас на проекте инженеры будут тоже использовать Excel-файлы. Если так, то все оформленные таким образом тест-кейсы для автоматизации все равно должны быть внесены в тест-трекер.

Сейчас поясним почему.

Представьте себе, вы написали тест-кейс, автоматизатор его заавтоматизировал. А потом вы внесли обновления в тест-кейс. Как автоматизатор узнает, какие тест-кейсы нужно обновить? Проще всего это сделать, изменив статус тест-кейса в тест-трекинговой системе. Это позволяет отследить все обновленные тесты.

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

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

Преимущества использования тест-трекера для хранения и обновления тест-кейсов:

  • Меньше времени на коммуникацию;
  • Меньше времени на обновления.

Кажется, все важные вопросы обсудили. В следующей статье перейдем непосредственно к правилам написания хороших тест-кейсов.

Новые тренинги по «Автоматизации тестирования ПО» в QA Academy

Друзья, спешим поделиться с вами отличной новостью!

Мы в QA Academy идём в ногу со временем и стараемся следовать изменениям в стремительно меняющемся IT-мире и, в частности, в профессии автоматизатора тестирования ПО. Чтобы наш тренинг «Автоматизация тестирования ПО» был актуальным и соответствовал всем современным требованиям, мы решили создать на его основе два новых тренинга — два уровня.

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

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

Для того, чтобы было проще понять, чем же отличаются эти тренинги, и какой выбрать, мы составили таблицу:

Тренинг будет проходить в онлайн и офлайн-форматах. В онлайн-обучении смогут участвовать все желающие независимо от места проживания. Для жителей Санкт-Петербурга есть возможность посещать тренинги очно.

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

Также на время обучения для каждого студента будет создана личная учётная запись с доступом к баг-трекинговой системе Jira, информационной системе Wiki, а также к системе GitLab.

В конце тренинга все студенты получат сертификат, а те, кто покажет хорошие результаты, ещё и рекомендательное письмо.
Лучшим выпускникам офлайн-тренингов в Санкт-Петербурге поступит предложение о стажировке в компании A1QA с возможностью дальнейшего трудоустройства в офисе в Санкт-Петербурге!

Все студенты, записавшиеся на тренинг, попадут в надёжные руки преподавателей QA Academy, а это опытные тестировщики-автоматизаторы компании A1QA, нашего партнера.

Запуск групп запланирован на сентябрь, и набор на тренинги уже открыт. Выбирайте тренинг и записывайтесь!

Чего ожидать тестировщикам в 2018: 5 трендов развития тестирования ПО

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

Однако информационные технологии на месте не стоят: меняются роли участников цикла разработки ПО, появляются новые инструменты, подходы, возникает необходимость приобретения новых навыков.

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

Тренд 1. Развитие интернета вещей

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

Внедрение IoT-технологий – сложный процесс, который требует тщательно продуманной стратегии разработки и тестирования.

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

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

Тренд 2. Использование open source инструментов

Уже сегодня все больше компаний используют open source сервисы для управления тестированием и внедрения автоматизации, поддержки Agile и DevOps принципов, управления жизненным циклом дефектов. Это означает, что в ближайшем будущем станут популярны open source инструменты. Гибкие, эффективные, с различными областями применения.

Selenium, Appium, JMeter – инструменты с открытым кодом, которые уже давно используются автоматизаторами.

Однако не только автоматизация тестирования может проводиться посредством общедоступных инструментов. Так, для тестирования API может применяться SoapUI, для нагрузочного тестирования – Apache JMeter.

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

Тренд 3. Еще больше Big Data

Понятие Big Data у всех на слуху уже не первый год. Но далеко не все тестировщики точно знают, что означает это понятие, хотя и должны. Ведь тестирование напрямую связано с данными.

Так что же такое «большие данные»? Определений можно найти много, но все они сводятся к тому, что Big Data связано с объемом и обработкой. Раньше мы тестировали мегабайты и гигабайты, а теперь все чаще речь идет о терабайтах и петабайтах. Однако дело не только в количестве нулей.

Большие данные связаны с так называемыми четырьмя «V»: volume (объем), velocity (скорость, с которой новые данные генерируются), variety (разнообразие данных) и veracity (достоверность данных).

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

Тестирование больших данных предполагает функциональные проверки и нефункциональные. Функциональное тестирование включает проверку качества данных и их обработку. К нефункциональным видам тестирования будут относиться нагрузочное тестирование, объемное тестирование. Однако каждый вид тестирования требует от тестировщика знания системы и умение исследовать продукт.

Отметим, при тестирование больших данных часто внедряется автоматизация тестирования.

Тренд 4. Agile и DevOps стирают границы

Гибкая методология разработки – Agile и практики DevOps (тесное взаимодействие разработчиков со специалистами по операционной деятельности) определяют место тестировщиков и влияют на взаимодействие внутри команды по тестированию.

Принципы Agile и DevOps будут применяться все шире, и тестировщики должны разбираться в них и уметь к ним адаптироваться.

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

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

Тренды 5. Новые технологии набирают популярность

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

Подведем итог

Чтобы добиться успеха, тестировщики должны следить за изменениями, быть готовыми к переменам и серьезно отнестись к саморазвитию. Если вы уже освоили базовые навыки тестировщика, можете попробовать себя в автоматизации тестирования ПО.

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

В QA Academy выдан 2000-ный сертификат!

Ура! Мы преодолели очередной рубеж. В нашей Академии выдан 2000-ный сертификат! Вручение сертификата прошло во время выпускного 125 группы в образовательном центре в Минске.

 

 

 

Обладательницей юбилейного сертификата стала Анна Новик. Анна – целеустремлённая, активная и приятная в общении девушка. Она не побоялась оставить свою прежнюю профессию, в которой была успешна, и рискнула пройти наш курс, чтобы стать специалистом по тестированию ПО. Аню можно ставить в пример всем студентам. Она доказала, что при желании каждый может добиться своей цели.


Выпускников курса заочно поздравил директор QA Academy Юрий Анушкин:
«QA Academy стала надежным и проверенным партнером для людей, решивших освоить новую профессию. Сотни наших выпускников успешно работают в компаниях ИТ-индустрии. Жаль, что не все 2000. Но мы – реалисты. Мы видим свою миссию в том, чтобы создавать возможность для всех и давать шанс каждому».

Также выпускников поздравила преподаватель группы Юлия Апанасович. Она отметила, что все ребята очень хорошо потрудились во время этого курса и многие заслужено получили рекомендательные письма.
«Надеюсь, что совсем скоро кого-то из прежних учеников я увижу за соседним рабочим местом», – добавила Юлия.


Наша Академия не останавливается на достигнутом. Мы стараемся для наших студентов и идём к следующим рубежам.