Чему вы научитесь
- Пресекать появление багов, улучшая процесс разработки ПО (Software QA)
- Находить баги, используя методологию black box и grey box (Software Testing)
- Разбираться в нюансах всех стадий Цикла разработки и Цикла тестирования
- Прослеживать связь между действиями участников Цикла разработки и качеством конечного продукта
- Создавать тест-кейсы (включая data-driven) и тест-сьюты, которые будут находить баги, и которые легко поддерживать
- Разбираться в причинах появления багов в спеках и коде
- Создавать ясные описания багов
- Заносить баги в систему трекинга багов
- Разбираться в нюансах Процедуры трекинга бага и в каждом из атрибутов бага, например, bug severity и bug priority
- Использовать техники нахождения багов, например, анализ рисков и граничные значения
- Разбираться в основных концепциях QA и тестирования, например, стоимости бага и тестовом покрытии
- Разбираться в типах релизов и принципах релиз менеджмента
- Различать основные виды тестирования и их место в Цикле разработки
- Делать верификации на фронтэнде (web) и бэкэнде (логи, база данных, код на Питоне)
- Разбираться в основных концепциях баз данных, например, primary key/foreign key.
- Разбираться в веб элементах и связанными с ними багами интерфейса
- Составлять тест-планы
- Оценивать объем работы для тестирования
- Грамотно подходить к автоматизации тестирования
- Составлять резюме на английском и искать работу в российской или западной компании
- Проходить собеседование на английском языке
- Общаться на английском, используя профессиональную терминологию
О курсе
Этот фундаментальный курс университетского уровня создан на основе 600-страничного учебника Романа Савина "How to Become a QA Tester in 30 Days". Курс включает в себя:
- видео-уроки с графикой, анимацией, частичным дублированием речи диктора и живым, понятным английским. Каждый урок заканчивается кратким изложением изученных идей, концепций и подходов.
- web-based ПО для тренировки практических навыков: ShareLane.com. При изучении курса используется фронтенд: книжный магазин + бэкенд: база данных, система трекинга багов, лог-файлы, код магазина на Питоне, билды и тестовая среда, тулы для помощи в grey box тестировании и скрипты для автоматизации тестирования.
- Домашние задания для закрепления знаний, полученных на уроке.
- Тесты для самопроверки.
- Профессиональный экзамен и Сертификат* о прохождении обучения в американской компании QA Mentor (https://www.qamentor.com/)
* Для получения Сертификата необходимо ответить на 80% из 178 практических вопросов по разработке и тестированию ПО. Количество попыток сдачи экзамена не ограничено. Каждый Сертификат регистрируется в базе данных и может быть подтвержден при запросе от работодателя.
---
Курс был создан в 2017 году в результате сотрудничества Романа Савина и американской компании QA Mentor, Inc. Видео-уроки созданы в профессиональной студии и голос за кадром принадлежит американскому диктору. Курс публикуется на Stepik с разрешения компании QA Mentor.
---
Внимание! Мизерная часть курса устарела, например, мы рассматриваем CVS, а не Git в качестве тула для контроля версий. Но 99% курса — это нетленка, которая обучит практике и поставит мозги тем, кто хочет стать настоящим профи. Тулы приходят и уходят, но подход, принципы и основы технологий остаются, а именно они и являются фундаментом нашей профессии.
---
Вот отзыв от Phil Libin (https://en.wikipedia.org/wiki/Phil_Libin), CEO компании Evernote:
This is an excellent overview of how to do professional software Quality Assurance. The text is very detailed with many examples and exercises covering both the philosophy and specific tactics of testing. There's even a section on how to find a job in the industry that's, despite my general distaste for most "how to land a job" advice, is actually quite charming and effective. I've hired many QA engineers, and can vouch for the effectiveness of much of the material here.
---
Вот отзыв от тимлида Stacy Harmon из крупной американской компании Yardi (https://www.linkedin.com/company/yardi/):
Often QA professionals fall into the position of testing without formal training. It’s hard to find a legitimate certificate training without it being tuned into sales pitch. With this being the case, my team lead made it her personal mission to support our team with finding a certification program that would truly enhance our testing skills. I must say that QA Tutor was the PERFECT fit. The organization, resources, materials and support offered by QATutor was the perfect way for our team to take this self-paced program and meet our needs. Thank you, Roman Savin, for making this material so easy to follow and implement into our process. It has definitely increased the quality of our work and processes!
---
Вот полная программа курса (из-за лимита символов в этой секции главы Quick Intro, Lesson Recap, Homework и Quiz исключены из списка, но они присутствуют в уроках курса):
Unit 1. Bugs Are Everywhere!
Lesson 1. What is a Bug
3 Conditions of a Bug's Existence
The Gist оf Testing
Spec, Spec, Spec
Software Bugs and Spec Bugs
Other Sources of Expected Results
Why Do We Call Them "Bugs"?
Lesson 2. The Purpose of Testing
Why We Cannot Test 100% of Software
Testing and QA
Unit 2. Test Cases And Test Suites
Lesson 3. Test Cases / Part 1
Test Case Structure
Results of the Test Case Execution
Useful Attributes of the Test Case
Data-Driven Test Cases
Lesson 4. Test Cases / Part 2
Maintainability of Test Cases
Тhe Number of Expected Results Inside One Test Case
Lesson 5. Test Cases / Part 3
Bad Test Case Practices
Lesson Recap
Lesson 6. Test Suites
Test Suites
Lesson 7. Test Cases / Part 4
States of a Test Case
Тhe Importance of Creativity
That Affect Test Cases
Checklists
3 Factors That Affect Test Cases
Unit 3. Software Development Life Cycle
Lesson 8. Idea
Once upon a Time in California or How Startups Are Born
Who Generates Ideas About Software
Why We Should QA Every Stage of SDLC
Lesson 9. Product Design / Part 1
Product Managers, MRD, PRD, BRD, Requirements
Essential Spec Attributes
7 Rules for Writing Solid Specs
Breaking Rule #1: Clarity of Details and Definitions
Breaking Rule #2: No Room for Misinterpretation
Breaking Rule #3: Absence of Internal/External Conflicts
Breaking Rule #4: Solid, Logical Structure
Breaking Rule #5: Completeness
Breaking Rule #6: Compliance with Laws
Breaking Rule #7: Compliance with Business Practices
Specs and Technical Instructions
Lesson 10. Product Design / Part 2
3 Spec Statuses
Why We Need Spec Freeze
Dealing with Spec Misinterpretation
Examples
Mock-ups
Process Flowcharts
Lesson 11. Coding / Part 1
Architecture of a Web-based application
8 Main Reasons Why Bugs Appear in the Software Code
Lesson 12. Coding / Part 2
10 Measures to Enhance Programming Practices
1. Good Hires
2. Friendly Environment
3. Code Inspections
4. Coding Standards
5. Realistic Schedules
6. Availability of Documentation
Lesson 13. Coding / Part 3
7. Unit Testing
Quick Stop: a Concept of the Bug Cost
8. Smart Refactoring
9. Love Thy Employees. A Google Story
10. Business Philosophy
Lesson 14. Coding / Part 4
Programming and Bug Fixing
3 Main Types of Software Bugs
Syntax Bugs
User Interface (UI) Bugs
Logical Bugs
UI or Logical Bug? Simple Question or Not?
Version Control for Test Cases
Test Case Review Meetings
Lesson 15. Testing and Bug Fixes
Code Freeze
Remember This for the Rest of Your Testing Career
From Sanity Test to Certification Test
Lesson 16. Release / Part 1
Release Types
Differences Between Major and Minor Releases
Version Numbering
Lesson 17. Release / Part 2
Quick Stop: DB Data and DB Schema
ShareLane Super Duper, Inc. The Beginning
ShareLane Architecture
Using Control Version System
Lesson 18. Release / Part 3
Quick Stop: External and Internal IP address
Software Builds
Releasing v. 1.0 to Production
Release 2.0 Is Out. And It's a Disaster
Lesson 19. Release / Part 4
Trunk and Branches in Version Control
Branch States
Production bug = Test Case
Postmortem for Bugs on Prod
Beta Release
Release Safety
Lesson 20. The Big Picture of SDLC
Maintenance
The Big Picture Of The Cycle
Introduction to Agile and Scrum
Lesson 21. The Software Testing Life Cycle
Research
Test Planning
Test Execution
Test Education And Reality
Unit 4. Types Of Software Testing
Lesson 22. By Knowledge of the Internals
Black Box Testing
White Box Testing
Quick Stop: Test Coverage
Grey Box Testing
Lesson 23. By the Object of Testing
Functional Testing
UI Testing
Usability Testing
Localization Testing
Load/Performance Testing
Security Testing
Compatibility Testing
Lesson 24. By Degree of Isolation
Component Testing
Integration Testing
System (End-to-End) Testing
Lesson 25. More Types of Testing
By Positivity of Test Scenarios
By Time Of Test Execution
By Degree Of Automation
By Preparedness
Unit 5. Bug Tracking
Lesson 26. Bug Tracking System / Part 1
The purpose of Bug Tracking System
List of BTS attributes
BTS Attributes: ID
BTS Attributes: Summary
BTS Attributes: Description
BTS Attributes: Attachment
BTS Attributes: Submitted By
BTS Attributes: Date
Lesson 27. Bug Tracking System / Part 2
BTS Attributes: Assigned To
BTS Attributes: Assigned By
BTS Attributes: Verifier
BTS Attributes: Component
BTS Attributes: Found On
BTS Attributes: Version
BTS Attributes: Build
BTS Attributes: DB
BTS Attributes: Comments
BTS Attributes: Severity
Lesson 28. Bug Tracking System / Part 3.301
BTS Attributes: Priority
BTS Attributes: Also Notify
BTS Attributes: Change History
BTS Attributes: Type
BTS Attributes: Status
Lesson 29. Bug Tracking System / Part 4
BTS Attributes: Resolution
Resolution: Reported
Resolution: Assigned
Resolution: Fix in Progress
Resolution: Fixed
Resolution: Fix is Verified
Resolution: Verification Failed
Resolution: Cannot Reproduce
Resolution: Duplicate
Resolution: Not a Bug
Resolution: 3rd Party Bug
Resolution: No Longer Applicable
Lesson 30. Bug Tracking System / Part 5
Bug Tracking Procedure
HTML Elements: Description and Potential Bugs
Text
Link
Image
Linked image
Text box
Text area
Password input box
Drop-down menu
Radio button
Checkbox
Submit button
Reset button
Unit 6. Test Preps And Test Execution
Lesson 31. Test Preps
The Tester's Mental Attitude
Intro To Special Skills In Bug Finding
Lesson 32. Black Box Testing Techniques / Part 1
Dirty List – White List
Test Tables
Flowcharts
Lesson 33. Black Box Testing Techniques / Part 2
Risk Analysis
Lesson 34. Black Box Testing Techniques / Part 3
Equivalent Classes
Boundary Values
When You Start To Implement Testing Techniques
Lesson 35. New Feature Testing
Test Estimates
Entry and Exit Criteria
Test Plan
Aggressive Testing From Jason Fisher
Lesson 36. Regression Testing
How to Select Test Suites for Regression Testing
Resolving The Main Challenge of Regression Testing
When Regression Testing Stops
Lesson 37. Test Automation / Part 1
A Story About the Merciless Automator, Benny M.
WHAT to Automate Versus HOW to Automate
Helpers
Lesson 38. Test Automation / Part 2
Scripts for component automation
Scripts for End-to-End Automation
Lesson 39. Test Automation / Part 3
Essential Questions to Ask BEFORE Writing Test Automation
Designing and Writing Test Automation
Unit 7. Job Hunting System
Lesson 40. Looking for First QA Job / Part 1
Why You Have a REAL Chance to Find a Job in Software Testing
Mental Tuning
Job Hunting Activities
Lesson 41. How to Write Killer Resume
6 Steps to Write Your First QA Resume
Lesson 42. Looking for First QA Job / Part 2
Working with Recruiters
Launching Campaign for Self-Promotion
Lesson 43. QA Interview Preps
Do Your Homework
Involve Your Network
Use Company Software
Look GOOD and Have a GOOD Sleep
Phone Screening and Phone Interview
Lesson 44. How to Pass QA Interview / Part 1486
Arrive on Time
This is Just Business
Be Friendly and Considerate
If the Interviewer Wants to Talk, Let Him Talk
NEVER Speak Negatively
The Interviewer Is Analyzing You as a Potential Coworker
Honesty and Sincerity Win Hearts
Don't Get Upset or Angry
Never Cancel an Interview Until You Accept a Job Offer
Sometimes You Should Postpone Your Interview
Remember That an Interview Is a Dialog, Not an Interrogation
Lesson 45. How to Pass QA Interview / Part 2
Use Professional Terms
Remember Your Mantra
Typical QA Interview Questions and Recommended Answers
Make a Speech at the End of Your Interview
Always Send a Thank-You Email
Dealing with Rejections
What Happens After the Interview
GOOD LUCK and GODSPEED!
Для кого этот курс
Начальные требования
1. Серьезный подход к учебе, чтобы освоить с нуля новую профессию.
2. Базовое знание английского языка. Если смотрите фильмы с субтитрами, то проблем не будет.
Наши преподаватели
Как проходит обучение
0. Перед началом обучения попытайтесь сдать выпускной экзамен (ссылка в предпоследнем уроке), чтобы понять, как много вы еще не знаете и как много вы узнаете!
1. Запускаете видео и делаете все практические задания, используя тренировочное ПО: ShareLane.com.
2. Делаете ВСЕ домашние задания.
3. Решайте КАЖДЫЙ тест.
4. Сдайте экзамен и получите Сертификат о прохождении обучения в американской компании QA Mentor.
5. В последнем разделе (Extras) вы найдете Quiz Cheat Sheet (ответы на Тесты и пояснения), Список терминов и Templates для резюме и процессов.
Внимание! Если в видео-уроке или домашнем задании упоминается файл, ссылка на него находится в следующем шаге после домашнего задания.
Сразу договоримся: работа предстоит большая и НЕОБХОДИМО делать ВСЕ практические задания, чтобы получить профессиональные знания и сдать выпускной экзамен, который подтверждается Сертификатом на английском языке.
Программа курса
Сертификат
Что вы получаете
- Фундаментальные практические знания по Software QA and Testing, которые будут востребованы в ЛЮБОЙ софтверной компании на протяжении ВСЕЙ вашей карьеры.
- Профессиональный английский язык и терминологию для прохождения интервью и успешной карьеры в тестировании.
- Ясное понимание Цикла разработки и Цикла тестирования.
- Сертификат о прохождении профессионального обучения в известной американской компании QA Mentor (после сдачи экзамена).