Академический Документы
Профессиональный Документы
Культура Документы
ПО
Mail: aleksandr.altynnik@g5e.com
- Где учились/учитесь/работаете?
● Теория
● В начале каждого следующего занятия контрольная
● Домашние задания
● В конце 1 части письменный экзамен (теория + практика) + устное собеседование. На основании этого будет принято
решение, с кем мы попрощаемся, а кто переходит ко второй части курса. Если все хорошо справитесь, то пройдете
все!
ВАЖНО! Для допуска к экзамену, к моменту старта 8 лекции должны быть сданы и приняты все домашние задания.
● Практическая работа над задачами, с которыми придется столкнуться в реальной работе в нашей компании
● В начале каждого занятия контрольная по материалу предыдущего. Также за каждое практическое получаете оценку.
Оценивание также по 100 бальной системе
● Собеседование на позицию Grade Basic QA в компанию G5 для кандидатов с лучшими результатами
Preconditions
Шаги воспроизведения:
ISTQB
ISO 9000
SWEBOK (Software Engineering Body of Knowledge) — документ, подготавливаемый комитетом Software Engineering
Coordinating Committee. Назначение SWEBOK — в объединении знаний по инженерии программного обеспечения.
Документ призван обеспечить следующее:
ISO 9000 - Серия международных стандартов, содержащих термины и определения, основные принципы
менеджмента качества, требования к системе менеджмента качества организаций и предприятий, а также
руководство по достижению устойчивого результата. Серия стандартов ISO 9000 разработана Техническим
комитетом 176 (ТК 176) Международной организации по стандартизации. В основе стандартов лежат идеи и
положения теории всеобщего менеджмента качества.
ISTQB® (International Software Testing Qualifications Board) – организация по сертификации тестировщиков ПО.
Основанная в Эдинбурге в ноябре 2002 года, ISTQB является некоммерческой ассоциацией, официально
зарегистрированной в Бельгии. ISTQB® отвечает за международную схему квалификации называемую ISTQB®
Certified Tester. Квалификация основывается на программе обучения (Syllabus), и состоит из нескольких уровней.
ISTQB® является крупнейшей организацией в области квалификации тестировщиков программного обеспечения,
представленной более чем в 60 странах мира.
● Динамическое тестирование
● Статическое тестирование
● Управление тестированием
● Средства тестирования
Что такое тестирование?
Мы тестируем каждый день, сами о том не задумываясь!
Определений в разных источниках наберётся больше 20-ти. Давайте рассмотрим самые распространённые.
Вариант 1. iSTQB. Процесс, содержащий в себе все активности жизненного цикла, как динамические, так и
статические, касающиеся планирования, подготовки и оценки программного продукта и связанных с этим
результатов работ с целью определить, что они соответствуют описанным требованиям, показать, что они
подходят для заявленных целей и для определения дефектов.
Вариант 2. Процесс исследования программного обеспечения с целью выявления ошибок
и проверки его качества. Также тестирование ПО можно описать как процесс проверки
соответствия между реальным и ожидаемым поведением программы. Тестирование
включает в себя активности по планированию работ (Test Management), проектированию
тестов (Test Design), выполнению тестирования (Test Execution) и анализу полученных
результатов (Test Analysis).
• Узнаем фактический
результат
ВАЖНО! В зависимости от модели разработки, писать тесты мы можем начинать еще на этапе спецификации, не
имея готового продукта.
Expected Result: Суп в меру солёный, такой Expected Result: Суп в меру солёный, такой как вам нравится.
как вам нравится.
Justification of the expected result: Личный опыт.
Важно! Тесты бывают позитивные и негативные
ВАЖНО! Сначала следует выполнить позитивные тест, что бы убедится что система работает в штатном режиме,
а уже потом переходить к негативным.
Основные определения
Обеспечение качества (Quality Assurance - QA) - это совокупность мероприятий, охватывающих все
технологические этапы разработки, выпуска и эксплуатации программного обеспечения (ПО)
информационных систем, предпринимаемых на разных стадиях жизненного цикла ПО, для
обеспечения качества выпускаемого продукта.
Контроль качества (Quality Control - QC) - это совокупность действий проводимых над объектом
тестирования в процессе разработки, для получения информации об актуальном состоянии объекта
тестирования а именно: готовность продукта к выпуску, соответствие зафиксированным
требованиям, соответствие заявленному уровню качества продукта.
Верификация (Verification) - это процесс оценки системы или её компонентов с целью определения
удовлетворяют ли результаты текущего этапа разработки условиям, сформированным в начале этого этапа.
Тест дизайн ( Test Design ) - это этап процесса тестирования ПО, на котором проектируются и создаются
тестовые случаи (тест кейсы), в соответствии с определёнными ранее критериями качества и целями
тестирования.
5. При проектировании тестов свести к минимуму переработку тестов при возможных изменениях
приложения.
Тестирование может показать наличие дефектов в программе, но не доказать их отсутствие. Тем не менее, важно
составлять тест-кейсы, которые будут находить как можно больше багов. Таким образом, при должном тестовом покрытии,
тестирование позволяет снизить вероятность наличия дефектов в программном обеспечении. В то же время, даже если
дефекты не были найдены в процессе тестирования, нельзя утверждать, что их нет.
Невозможно провести исчерпывающее тестирование, которое бы покрывало все комбинации пользовательского ввода и
состояний системы, за исключениям совсем уж примитивных случаев. Вместо этого необходимо использовать анализ
рисков и расстановку приоритетов, что позволит более эффективно распределять усилия по обеспечению качества ПО.
3. Раннее тестирование
Тестирование должно начинаться как можно раньше в жизненном цикле разработки программного обеспечения, и его
усилия должны быть сконцентрированы на определенных целях.
4. Скопление дефектов
Разные модули системы могут содержать разное количество дефектов – то есть, плотность скопления дефектов в разных
элементах программы может отличаться. Усилия по тестированию должны распределяться пропорционально фактической
плотности дефектов. В основном, большую часть критических дефектов находят в ограниченном количестве модулей. Это
проявление принципа Парето: 80% проблем содержатся в 20% модулей.
5. Парадокс пестицида
Прогоняя одни и те же тесты вновь и вновь, Вы столкнетесь с тем, что они находят все меньше новых ошибок. Поскольку
система эволюционирует, многие из ранее найденных дефектов исправляют и старые тест-кейсы больше не срабатывают.
Чтобы преодолеть этот парадокс, необходимо периодически вносить изменения в используемые наборы тестов,
рецензировать и корректировать их с тем, чтобы они отвечали новому состоянию системы и позволяли находить как можно
большее количество дефектов.
Выбор методологии, техники и типа тестирования будет напрямую зависеть от природы самой программы. Например,
программное обеспечение для медицинских нужд требует гораздо более строгой и тщательной проверки, чем, скажем,
компьютерная игра. Из тех же соображений, сайт с большой посещаемостью должен пройти через серьезное тестирование
производительности, чтобы показать возможность работы в условиях высокой нагрузки.
Тот факт, что тестирование не обнаружило дефектов, еще не значит, что программа готова к релизу. Нахождение и
исправление дефектов будут не важны, если система окажется неудобной в использовании, и не будет удовлетворять
ожиданиям и потребностям пользователя.
Книги и материал которые можно, а
некоторые нужно начать читать уже сейчас
Intern (Это Вы) - Учится основам профессии. Закрепляя теорию на практике и постепенно знакомиться с проектами, которые
будут в реальной работе. Ребятам, которые отличились в процессе обучения, предлагается позиция в компании.
Junior - Учится работать. Выполняет четко поставленную задачу, может зависнуть, нуждается в менторе.
Middle - Может самостоятельно выполнять простые и средние по сложности задачи. С некоторой помощью решать более
сложные. Может обучать начинающих сотрудников.
Senior - Может самостоятельно решать сложные задачи. Проводить ревью решений других сотрудников.
Team Lead - Постановка задач команде и контроль выполнения. Помимо высоких технических скиллов должен обладать,
сильными софт скилами.
Grade Basic
- Умение документировать отчеты о своей работе
- Умение документировать дефекты под контролем наставника
- Умение выполнять тестирование под контролем наставника
Grade 1
- Умение документировать отчеты о своей работе
- Умение самостоятельно документировать дефекты
- Умение выполнять тестирование под контролем наставника
Grade 2
- Умение документировать отчеты, касающиеся тестирования части проекта
- Умение самостоятельно документировать дефекты
- Умение самостоятельно выполнять тестирование
- Умение выполнять оценку временных затрат на собственную работу
- Умение обучать документировать дефекты, выполнять тестирование по тестовой документации
- Умение писать инструкции, тест кейсы по отдельным функционалам для проектного тест комплекта.
Grade 3
- Умение документировать отчеты, касающиеся проекта в целом или направления
- Умение самостоятельно документировать дефекты
- Умение самостоятельно выполнять тестирование
- Умение координировать выполнение тестирования группой
- Умение выполнять оценку временных затрат на собственную работу
- Умение выполнять оценку временных затрат на часть проекта
- Умение обучать документировать дефекты, выполнять тестирование по тестовой документации
- Умение обучать создавать тестовую документацию
- Умение создавать тестовую документацию: (Тест-планы, кейсы, инструкции, задачи, и т.д.). Умение подготавливать
документацию для аутсорс тестирования. Умение проводить ревью тестовой документации
- Умение планировать работы по тестированию фичи/платформы.
Grade 4
- Умение документировать отчеты, касающиеся проекта в целом или направления.
- Умение самостоятельно документировать дефекты для внешних ресурсов (Google, Apple etc)
- Умение координировать выполнение тестирования группой
- Умение выполнять оценку временных затрат на работу по проекту в целом
- Умение обучать создавать тестовую документацию
- Умение создавать тестовую документацию: (Тест-планы, кейсы, инструкции, задачи, и т.д.). Умение
подготавливать документацию для аутсорс тестирования. Умение проводить ревью тестовой
документации.
- Умение планировать работы по тестированию проекта
- Умение имплементировать новый инструментарий для отдела QA
- Умение проводить внешние собеседования
Grade 5
Все вышеперечисленное в других грейдах.
Плюс умение грамотно и полно сформулировать и донести до команды идеи по улучшению проекта на
основании анализа своего проекта и проектов-конкурентов. На данной должности сотрудник занимается
разработкой глобальных стратегий по улучшению проекта.
Какие игры делает наша компания
HOG (Hidden Object Game) - это логические мини-игры, в которых основной задачей игрока являются поиски различных
предметов (списки предметов подают в виде слов, силуэтов и анаграмм, ограничивают во времени прохождение уровня,
разными способами усложняя процесс) разнообразные детективные расследования, решение логических задач, разгадка
секретов, проверка на наблюдательность.
HOPA (Hidden Object Puzzle Adventures) - расширенный вариант HOG присутствует не только поиск
предметов, но и различные механики позволяющие более широко взаимодействовать с миром.
Match 3 - Игры этого жанра характеризуются тем, что их игровой мир состоит из таблицы или сетки
элементов, а задачей игрока является манипулирование элементами таким образом, чтобы совпали
заданные игрой шаблонные комбинации, и после выполнения условия собранные элементы исчезают.
Mahjong - основанная на классической китайской игре маджонг. Однако, в ней изображена не настоящая
игра в маджонг, а скорее пасьянс маджонг.
Пасьянс Маджонг - игра-головоломка, основанная на одинаковых фишках. Цель состоит в том, чтобы
сопоставить открытые пары одинаковых плиток и удалить их с доски, выставив плитки под ними для игры.
Игра заканчивается, когда все пары плиток удалены с доски или когда не осталось открытых пар.
Word - игры в которых необходимо из предоставленного набора букв складывать различные слова
Simulation - симулятор некоего процесса. Например постройки города или обслуживания клиентов в
супермаркете.
Card - карточные игры. Например солитер. Убирание карт с доски посредством составления
соответствующих комбинаций, по аналогии с маджонгом.
Adventure - один жанров компьютерных игр, представляющий собой интерактивную историю с главным
героем (или героями), управляемым игроком. Важнейшими элементами игры в жанре Adventure являются
собственно повествование и исследование мира, а ключевую роль в игровом процессе играет решение
головоломок и задач, требующих от игрока умственных усилий.
Домашнее
задание
1. Прочитать материал лекции и подготовиться к тесту.
2. Описать цель от курса по SMART.
M - и тд.
Сдаем в pdf файле. Перейдя по ссылке вы сможете ознакомится с подробной инструкцией как это делать:
https://docs.google.com/document/d/13mGoJEmph7YYKwvVKxTZBiiRqxYSwKn4mpb7eVmq7VI/edit