Гид по профессии тестировщик: чем занимается специалист в сфере qa, сколько зарабатывает, что надо знать и где учиться

Quality Assurance Functions:

There are 5 primary Quality Assurance Functions:


  1. Technology transfer: This function involves getting a product design document as well as trial and error data and its evaluation. The documents are distributed, checked and approved
  2. Validation: Here validation master plan for the entire system is prepared. Approval of test criteria for validating product and process is set. Resource planning for execution of a validation plan is done.
  3. Documentation: This function controls the distribution and archiving of documents. Any change in a document is made by adopting the proper change control procedure. Approval of all types of documents.
  4. Assuring Quality of products
  5. Quality improvement plans

Что такое QA тестирование? Виды тестирования

QA, или Quality Assurance — это комплекс мер для обеспечения качества ПО. В этот комплекс входит анализ всех условий, которые могут сказаться на качестве разработки и готового продукта.

QA тестирование бывает функциональным и нефункциональным:

  • Функциональным. Проверяет работу всех функций мобильного/десктопного приложения или сайта и анализирует взаимодействие разрабатываемой системы с другими программными продуктами. Функциональное тестирование показывает, насколько приложение производительно, насколько удобно пользоваться интерфейсом, устанавливать его. Эти тесты проверяют защищенность и надежность системы, ее совместимость.
  • Нефункциональным. Эти тесты исследуют характеристики приложения или сайта, которые можно измерить. Такие тесты демонстрирует «КАК», насколько хорошо работает программа.

Также тестировщики занимаются:

  • Тестированием производительности. Нагрузочные тесты показывают, справляется ли ПО со стандартной нагрузкой и помогают определить максимально возможную нагрузку на систему. Стресс-тесты изучают работу приложения или сайта при нестандартных нагрузках.
  • Регресс-тестами. Проверяют, насколько сказываются новые опции программы и откорректированные ошибки на функциональности программы.
  • Модульными тестами. Отдельная проверка модулей для нахождения тех, которые вызывают проблему.
  • Тестированием безопасности. Проверка защищенности программного продукта от вирусов, хакеров, кражи конфиденциальной информации.
  • Проверкой локализованных версий приложения. Тесты показывают, насколько корректен перевод интерфейса, выдаваемых пользователю сообщений, пояснительной документации.
  • Usability-тестированием. Тестирование удобства работы с приложением/сайтом для пользователей, его понятности и простоты. Такие исследования позволяют выявить проблемы с навигацией, основным и дополнительным функционалом.

Словом, QA специалист — это человек, который проверяет программный продукт вдоль и поперек. Тестировщик выясняет, как ПО поведет себя при ожидаемом или отличном от ожидаемого поведении пользователя. Изучает, что происходит с приложением, когда с ним работает знающий или не знающий систему человек – тестирование «белого ящика» и «черного ящика» соответственно.

Оплата труда

Зарплата на 20.08.2020

Россия 35000—150000 ₽

Москва 70000—190000 ₽

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

Ступеньки карьеры и перспективы

Существует 4 уровня квалификации:

  1. Trainee QA Engineer — начинающий специалист.
  2. Junior QA Engineer — специалист, проработавший в должности от 1 до 6 месяцев и имеющий определённые навыки в работе. Знающий, что такое тест-план, тест-кейс, тест-сьют, тест-степ, тест-дизайн в общих чертах, Definition of Done. Имеющий представление о дефектах Severity и Priority. Базовые навыки SQL — селект, упдейт.
  3. Middle QA Engineer — специалист среднего уровня квалификации, со стажем работы от 1 до 3 лет, умеющий работать самостоятельно и консультирующий младший персонал.
  4. Senior QA Engineer — специалист высшей квалификации, выполняющий самые сложные технические задачи широкого спектра, используя разные виды тестирования.

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

  • в направлении QA team lead — QA-manager — Head of QA department, то есть до позиции начальника смены или направления внутри отдела;
  • до позиции разработчика, руководителя разработчиков, аналитика, архитектора вплоть до руководителя проекта внутри компании.

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

В ходе карьерного роста можно переквалифицироваться в бизнес-аналитики или программисты, развиваться как управленец в направлении senior project manager — CTO.


Автор статьи Флюра Ягофарова

Итак, что поможет, и где искать информацию?

  1. Высшее образование, лучше техническое, но в принципе, любое. Высшее образование обычно развивает навык создавать в голове сложные структуры, работать с большими объёмами информации в сжатые сроки и делать много работы с отложенным результатом, иногда не самой интересной.
  2. Книги, если читать их вдумчиво и пытаться применить знания на практике. Хорошее упражнение здесь — взять книжку Савина «Тестирование Дот Ком», а ещё словарь и силлабус ISTQB. Выбрать какой-нибудь портал или приложение, которое вы будете тестировать. Дальше читаете Савина, одновременно ищете определение всех терминов в словаре/силлабусе и пробуете всё описанное на практике. Кроме Савина хорошо бы почитать ещё:
    • Стив Круг «Не заставляйте меня думать».
    • Майкл Дж. Хернандес, Джон Вейскас «SQL-запросы для простых смертных. Практическое руководство по манипулированию данными в SQL».
    • Карл Вигерс «Разработка требований к программному обеспечению».
  3. Практика — краудтестинг, практикантские программы в разных IT-компаниях или домашний проект. Хорошо бы вместе с обучением тестированию начать разбираться и в программировании, сейчас довольно много хороших онлайн-курсов, часто бесплатных.
  4. Интернет — есть много хороших ресурсов про тестирование или про IT в целом и тестирование в частности:
    • Основной портал по QA и тестированию.
    • Статьи на Tproger, посвящённые тестированию.
    • Статьи на «Хабре», посвящённые тестированию.

Плюсы и минусы профессии тестировщика ПО

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

Плюсы

  1. Придется постоянно повышать квалификацию, и это будет интересно! IT-отрасль развивается динамично и не дает специалистам деградировать интеллектуально.
  2. Зарплата тестировщика с опытом высока и приближается к зарплате программиста.
  3. QA тестеры и инженеры — люди востребованные, и спада популярности этой профессии не наблюдается. В том числе, в периоды экономических кризисов.

Минусы

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

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

Как вычислять с помощью законов

Поскольку q и Q являются скалярными единицами, вычислить их с помощью законов можно через точные формулы, выведенные известными учеными-физиками. К примеру, в соответствии с законом Кулона, можно найти величину и силовое направление взаимодействия заряженных частиц между несколькими неподвижными телами.

Закон сохранения

Все элементарные частицы подразделяются на нейтральные или заряженные. Они вступают во взаимодействие друг с другом внутри электромагнитного поля. Частицы, которые имеют одноименный электрон, отталкиваются, а разноименный – притягиваются. В первом случае наблюдается избыток электронов, а во втором – их недостаток. Оба типа частиц заряжаются посредством электризации. На практике, при возникновении данного явления, заряженные частицы равны по модулю, несмотря на противоположность знаков. Когда разные частицы притягиваются, то между ними происходит электризация и сохранение электрона. При этом, сумма всех изолированных системных частиц не изменяется, то есть, q + q + q…= const.

Закон Кулона

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

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

Обратите внимание! При увеличении расстояния между частицами, сал их взаимодействия неизменно убывает. В математической формуле это выглядит так: F1 = F2 = K*(q1*q2/r2), где q1 и q2 считаются модулями заряженных микрочастиц, k является коэффициентом пропорциональности, который зависит от системного выбора единицы, а r — расстоянием

Закон Кулона

Quality Assurance Certifications:

There are several certifications available in the industry to ensure that Organizations follow Standards Quality Processes. Customers make this as qualifying criteria while selecting a software vendor.

ISO 9000

This standard was first established in 1987, and it is related to Quality Management Systems. This helps the organization ensure quality to their customers and other stakeholders. An organization who wishes to be certified as ISO 9000 is audited based on their functions, products, services and their processes. The main objective is to review and verify whether the organization is following the process as expected and check whether existing processes need improvement.

This certification helps —

  • Increase the profit of the organization
  • Improves Domestic and International trade
  • Reduces waste and increase the productivity of the employees
  • Provide Excellent customer satisfaction

Difference between Quality Control and Quality Assurance?

Sometimes, QC is confused with the QA. Quality control is to examine the product or service and check for the result. Quality assurance is to examine the processes and make changes to the processes which led to the end-product.


Examples of QC and QA activities are as follows:

Quality Control Activities Quality Assurance Activities
Walkthrough Quality Audit
Testing Defining Process
Inspection Tool Identification and selection
Checkpoint review Training of Quality Standards and Processes

The above activities are concerned with QA and QC of any product and not essentially software. With respect to software

  • QA becomes SQA ( Software Quality Assurance)
  • QC becomes Software Testing.

QUALITY ASSURANCE JOB

General Purpose

Responsible for ensuring a product or service meets the established standards of quality including reliability, usability and performance required for distribution and the market.

Main Job Tasks, Duties and Responsibilities

  • draft quality assurance policies and procedures
  • interpret and implement quality assurance standards and procedures
  • evaluate adequacy of quality assurance standards
  • devise sampling procedures and directions for recording and reporting quality data
  • review the implementation and efficiency of quality and inspection systems
  • plan, conduct and monitor testing and inspection of materials and products to ensure finished product quality
  • document internal audits and other quality assurance activities
  • investigate customer complaints and non-conformance issues
  • collect and compile statistical quality data
  • analyze data to identify areas for improvement in the quality system
  • develop, recommend and monitor corrective and preventive actions
  • prepare reports to communicate outcomes of quality activities
  • identify training needs and organize training interventions to meet quality standards
  • coordinate and support on-site audits conducted by external providers
  • evaluate audit findings and implement appropriate corrective actions
  • monitor risk management activities
  • responsible for document management systems
  • assure ongoing compliance with quality and industry regulatory requirements

Education and Experience

  • Bachelors degree preferred
  • certifications an advantage including Quality Auditor, Quality Engineer, Quality Improvement Associate, Six Sigma
  • quality inspection, auditing and testing experience
  • experience with implementation of corrective action programs
  • product or industry-specific experience
  • strong computer skills including Microsoft Office, QA applications and databases
  • knowledge of tools, concepts and methodologies of QA
  • solid experience in effective usage of data analysis tools and statistical analysis
  • knowledge of relevant regulatory requirements

Key Competencies

  • attention to detail
  • communication skills — verbal and written
  • data collection, management and analysis
  • problem analysis and problem solving
  • planning and organizing
  • sound judgment
  • decision-making skills
  • customer service orientation
  • effective interaction with stakeholders
  • teamwork

Adapt this sample QA job description for your own use.

QA-инженер должен быть мастером на все руки

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

Но и это ещё не всё. Тестировщик обязан заметить, если каким-то функционалом неудобно пользоваться. Что он непонятен или не соответствует существующим стандартам. Нужно уметь думать как пользователь и смотреть на продукт его глазами и свободно ориентироваться в предметной области продукта.

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

Differences between SQA and Software Testing

Following table explains on differences between SQA and Software Testing:

SQA

Software Testing

Software Quality Assurance is about engineering process that ensures quality Software Testing is to test a product for problems before the product goes live
Involves activities related to the implementation of processes, procedures, and standards. Example — Audits Training   Involves actives concerning verification of product Example — Review Testing
Process focused Product focused
Preventive technique Corrective technique
Proactive measure Reactive measure
The scope of SQA applied to all products that will be created by the organization The scope of Software Testing applies to a particular product being tested.

How ProjectManager.com Helps with Quality


Quality is about tracking and communication. If you don’t recognize an issue the moment it shows up in your project, it will quickly turn into a problem that will threaten the quality of your deliverable. The award-winning software from ProjectManager.com can help. It’s designed to monitor every phase of your project and respond quickly when issues arise.

Real-Time Updates for Better Tracking

If you learn about an issue after it has occurred, then by the time you address it, that issue is likely a problem and possibly an insurmountable one in terms of quality. That’s why ProjectManager.com has real-time data that delivers information on your project as it’s happening, so there’s no lag time that will impact quality.

How you get your data is just as important as when you get it. If your information is vague or rigid, you might not see what you need to know in order to resolve an issue. ProjectManager.com has that covered, too, with easy one-click reporting that can be filtered to show just the data you want. These reports are also populated with live data, so it’s the best of both worlds.

Not that you want to be generating reports all the time. Is there a way to keep track of the project’s progress quickly and simply? Yes.

ProjectManager.com has a real-time dashboard that is constantly being fed with live data to report on the tasks, costs and other project metrics.

ProjectManager.com’s dashboards are easy to read and vital for quality assurance.

Take Action Quickly with Clear Communication

Once you identify something that is going to negatively impact the quality of your deliverable, you need to communicate that information swiftly to your team.

Once people are informed, then you have Gantt charts to formulate your plan, assign team members and track their progress. ProjectManager.com gives you quality assurance from the start to the finish of your project.

The tracking of quality assurance and its testing requires a software that can collect real-time data and provide managers with easy-to-read reports. ProjectManager.com is a cloud-based project management tool with features such as real-time dashboards that record and reflect changes as they occur. See how it can help your quality assurance and testing by taking this free 30-day trial.

Что нужно знать, чтобы стать тестировщиком QA?

QA-тестеру полагается:

  • свободно читать по-английски;
  • уметь работать с баг-трекером JIRA, Redmine, YouTrack или подобными;
  • знать язык запросов SQL, чтобы писать запросы в базы данных;
  • тому, кто собирается тестировать сайты, необходимо освоить HTML/CSS верстку, JavaScript, jQuery и HTTP, а тому, кому нравится работать с мобильными приложениями — системы Genymotion, VirtualBox и iOS Simulator;
  • владеть приемами тест-дизайна;
  • знать особенности клиент-серверного взаимодействия.

Это не все, что нужно освоить начинающему тестировщику: для успешного развития в профессии он должен обладать определенными навыками (Soft skills):

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

Из Телеграм-каналов для новичков будут полезными QA_ru (русскоязычный чат тестеров), QA Channel (общая разноплановая информация для QA специалистов) и Серьезный тестировщик (интересные статьи и забавные гифки по теме). Украинские QA специалисты и консультанты ведут каналы automation-remarks.com, BigQueryInsights и CatOps.


С этим читают