Skip to content

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

License

Notifications You must be signed in to change notification settings

infostart-devops/QA_bible

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation




Что это за проект?

Библия QA это почти 300 страниц обновляемой смеси ответов на вопросы с реальных собеседований на QA, полезных ресурсов и статей, перевода интересного контента с зарубежных ресурсов и агрегации материала с отечественных. Хочу подчеркнуть, что прилагаемые к вопросам ответы - лишь мой конспект, что означает, что ответственность за свои знания несёте вы сами и каждую изучаемую тему всегда стоит рассматривать с разных углов (в разных источниках). В данный момент этот материал больше нацелен, во-первых, на начинающих, т.к. опытных коллег учить мне ещё опыта не хватит, и, во-вторых, на людей с английским до intermediate, т.к. моих знаний английского не хватает для качественного перевода сложных текстов, а у кого хватает - те и в оригинале почитают. Но, в целом, материал будет полезен всем грейдам, тем более что часть его далеко не начального уровня. Что касается источников, то список не полный. В первоначальном конспекте для себя я не сохранял ссылки, так что, если увидели авторский контент, прошу не ругаться и связаться со мной.

Как им пользоваться?

Просмотр через github: для того, чтобы увидеть материал целиком, нужно открыть первую или вторую часть (Manual part 1 или 2) в файлах репозитория (в мобильной версии нужно сначала нажать View code). Пришлось их разбить ввиду ограничения на размер одного файла в 1 мб.
В виде веб-сайта: https://vladislaveremeev.github.io/ (оглавление кликабельно)
Скачать в удобном формате: текстовые файлы доступны для скачивания в разделе релизов

Оглавление

  • ----- Введение (F.A.Q.) ----- 11
    • Хочу войти в айти (в разработку) через тестирование, хороший план? 11
    • Хочу зарабатывать много денег, мне сюда? 11
    • Хочу работать удаленно джуном, это возможно? 11
    • Что реально должен знать junior? А что спросят на собеседовании? 11
    • С чего начать обучение? 13
    • Какие есть полезные ресурсы кроме этого? 13
    • Основные инструменты тестировщика? 17
    • Как вообще происходит процесс найма? 20
    • Качества, которыми нужно обладать тестировщику? 20
    • Как составить резюме? 21
    • Как проходить собеседование? 22
    • Ошибки в работе у начинающих тестировщиков? 24
    • Я – единственный тестировщик на проекте. Что делать? 25
  • ----- HR-часть ----- 27
    • Вопросы с реальных собеседований с этапа HR 27
  • ----- Теоретическая часть ----- 28
    • Общие понятия 28
    • Что означает тестирование ПО? 28
    • Почему требуется тестирование ПО? 28
    • Что означает обеспечение качества (Quality Assurance - QA) при тестировании ПО? 28
    • Что означает контроль качества (Quality Control - QC) при тестировании ПО? 28
    • Что означает качество ПО? (Software Quality) 28
    • Объясните отличия в QA, QC и тестировании 29
    • Разница между верификацией и валидацией? (Verification и Validation) 30
    • Принципы тестирования? 31
    • Критерии выбора тестов? 33
    • Что такое импакт анализ (анализ влияния, Impact Analysis)? 36
    • Что подразумевается под тестовым покрытием? (Test Coverage) 36
    • Что такое модель зрелости тестирования (TMM - Test Maturity Model)? 37
    • Что такое тестирование со сдвигом влево? (Shift left testing) 39
    • Что такое независимое тестирование? (Independent testing) 39
    • В чем разница между превентивным и реактивным подходами в тестировании? (Preventative and Reactive approaches) 40
    • Перечислите типичные возможные обязанности инженера по обеспечению качества? 40
    • Что такое аудит качества? 41
    • Почему тестирование делится на отдельные этапы? 41
    • Почему невозможно полностью протестировать ПО? 41
    • Как вы тестируете продукт, если требования еще не зафиксированы? 41
    • Как вы узнаете, было ли создано достаточно тестов для тестирования продукта? 41
    • Как вы понимаете инспекцию? 41
    • Какие есть роли/должности в команде? 42
    • Опишите жизненный цикл продукта по этапам - какие участники на каждом этапе, какие у них роли? Какие артефакты на каждом этапе? 43
    • Кто такой SDET? 44
    • Что такое тестирование как сервис? (TaaS – testing as a Service) 45
    • Что подразумевается под тестовой средой? (Test Environment/Test Bed) 45
    • Что подразумевается под тестовыми данными? 46
    • Основные фазы тестирования? 46
    • Подробнее про бета-тестирование? 46
    • Что означает пилотное тестирование? (Pilot) 46
    • В чем отличие build от release? 47
    • Что такое бизнес – логика (domain)? 47
  • ----- Виды тестирования ----- 48
    • Какие существуют основные виды тестирования ПО? 48
    • Типы тестирования? (White/Black/Grey Box) 50
    • Что означает тестирование черного ящика? 50
    • Что означает тестирование белого ящика? 51
    • Что означает тестирование серого ящика? (Grey box) 52
    • Основные отличия White/grey/black box? 53
    • Что такое пирамида / уровни тестирования? (Testing Levels) 53
    • Что такое деструктивное/разрушающее/негативное тестирование? (DT - Destructive testing) 54
    • Что такое недеструктивное/неразрушающее/позитивное тестирование? (NDT – Non Destructive testing) 55
    • Что подразумевается под компонентным/модульным/юнит тестированием? (Component/Module/Unit testing) 55
    • Что подразумевается под интеграционным тестированием? (Integration testing) 58
    • Разница между Unit testing и Integration testing? 59
    • Что такое системное интеграционное тестирование? (SIT - System Integration testing) 60
    • Что подразумевается под инкрементальным подходом? (Incremental Approach) 60
    • Что подразумевается под подходом снизу-вверх? (Bottom-Up Approach) 60
    • Что подразумевается под подходом сверху-вниз? (Top-Down Approach) 61
    • Что подразумевается под гибридным/сэндвич-подходом? (Sandwich Approach) 61
    • Что подразумевается под подходом Большого взрыва? (Big Bang Approach) 61
    • В чем разница между тест-драйвером и тест-заглушкой? (Test Driver and Test Stub) 62
    • Что подразумевается под системным тестированием? 62
    • Можем ли мы провести системное тестирование на любом этапе? 63
    • Что такое функциональное тестирование? 63
    • Что такое тестирование совместимости/взаимодействия? (Compatibility/Interoperability testing) 63
    • Что такое тестирование на соответствие? (Conformance/Compilance testing) 64
    • Что такое нефункциональное тестирование? 65
    • Основные понятия в тестировании производительности? 66
    • Тестирование производительности клиентской части и серверной, в чем разница? 67
    • В общем виде что такое тестирование производительности? 67
    • Что такое тестирование емкости/способностей? (Capacity) 69
    • Что означает тестирование масштабируемости? (Scalability) 69
    • Расскажите о стрессовом тестировании? (Stress testing) 70
    • Расскажите о нагрузочном тестировании? (Load) 70
    • Что такое объемное тестирование? (Volume testing) 71
    • Тестирование выносливости/стабильности/надежности (Soak/Endurance/Stability/Reliability testing) 71
    • Что такое спайк/шиповое тестирование? (Spike) 71
    • Что такое тестирование устойчивости? (Resilence) 71
    • Что такое тестирование времени отклика? (Response time testing) 71
    • Что такое Ramp тестирование? 71
    • Что такое тестирование хранилища? (Storage testing) 71
    • Что такое тестирование на отказ и восстановление? (Failover and Recovery testing) 72
    • Что вы знаете о Тестировании удобства пользования? (Usability testing) 73
    • Отличия тестирование на удобство пользования и тестирования доступности? (Usability Vs. Accessibility testing) 73
    • Что такое тестирование интерфейса? 75
    • Что такое тестирование рабочего процесса/воркфлоу? (Workflow testing) 76
    • Что вы знаете о пользовательском приемочном тестировании? (UAT – User Acceptance testing) 76
    • Что такое эксплуатационное приемочное тестирование? (OAT - Operational Acceptance testing) 76
    • Расскажите об инсталляционном тестировании? 77
    • Что вы знаете о тестировании безопасности? (Security and Access Control testing) 79
    • Что означает оценка уязвимости/защищенности? (Vulnerability Assessment) 81
    • Расскажите подробнее о тестировании на проникновение? (Penetration testing) 81
    • Отличия Vulnerability Assessment от Penetration testing? 82
    • Что такое Fuzz тестирование? 83
    • Можно ли отнести тестирование безопасности или нагрузочное тестирование к функциональным видам тестирования? 84
    • Что вы знаете о конфигурационном тестировании? (Configuration testing) 84
    • Что подразумевается под проверкой на дым / дымовым тестированием? (Smoke testing) 85
    • Что такое тестирование встряхиванием? (Shake out testing) 86
    • Что подразумевается под санитарным тестированием? (Sanity testing) 87
    • Отличие санитарного тестирования от дымового? (Sanity vs Smoke testing) 87
    • Что вы знаете про регрессионное тестирование? (Regression testing) 87
    • Типы регрессии по Канеру? 90
    • Объясните, что такое тестирование N+1? 90
    • Что означает подтверждающее тестирование? (confirmation/re-testing) 90
    • В чем разница между повторным и регрессионным тестированием? 90
    • Что вы знаете о тестировании сборки? (Build Verification Test) 91
    • Что такое тестирование потоков? (Thread testing) 91
    • Что такое тестирование документации? (Documentation testing) 92
    • Какие вы знаете уровни тестирования данных? 92
    • Что такое подкожный тест? (Subcutaneous test) 92
    • Расскажите о локализации, глобализации и интернационализации? (Localization/ globalization/internationalization testing) 93
    • Что такое исследовательское тестирование? (Exploratory testing) 94
    • Что вы знаете о турах Виттакера в исследовательском тестировании? 95
    • Что такое Свободное или Интуитивное тестирование? (Adhoc) 95
    • Что вы знаете о мутационном тестировании? (Mutation testing) 97
    • Что означает механизм тестирования по ключевым словам? (Keyword Driven testing Framework) 98
    • Что вы знаете о тестировании интерфейса прикладного программирования (API - Application Programming Interface)? 98
    • Как протестировать API без документации/черным ящиком? 100
    • Тестирование клиентской части и серверной, в чем разница? (Frontend testing Vs. Backend testing?) 101
    • Что подразумевают под эталонным тестированием? (Baseline testing) 102
    • В чем разница между Baseline и Benchmark testing? 102
    • Что такое параллельное/многопользовательское тестирование? (Concurrency/Multi-user testing) 102
    • Как вы думаете, что такое тестирование на переносимость? 102
    • Что такое тестирование графического интерфейса/визуальное тестирование? (GUI - Graphical User Interface testing) 103
    • Что такое A/B тестирование? 104
    • Что означает сквозное тестирование? (E2E - End–to–End) 104
    • В чем разница между E2E и системным тестированием? 104
    • Что такое параллельное тестирование? (Parallel testing) 105
  • ----- Тест дизайн ----- 107
    • Тест дизайн? (Test Design) 107
    • Перечислите известные техники тест-дизайна? 107
    • Что такое статическое тестирование, когда оно начинается и что оно охватывает? 111
    • Что такое динамическое тестирование, когда оно начинается и что оно охватывает? 111
    • Какие виды Review вы знаете? 112
    • Что вы знаете о Data Flow testing? 112
    • Что вы знаете о Control Flow testing? 112
    • Что такое Loop coverage? 113
    • Что такое Race coverage? 114
    • Тестирование пути и тестирование базового пути? (Path testing & Basis Path testing) 114
    • Что вы знаете о Statement coverage? 115
    • Что вы знаете о Decision coverage? 116
    • Что вы знаете о Branch coverage? 116
    • Что вы знаете о Condition coverage? 117
    • Что вы знаете о FSM coverage? 117
    • Что такое Function coverage? 117
    • Что такое Call coverage? 117
    • Что означает LCSAJ coverage? 117
    • Сравнение некоторых метрик 118
    • Что такое Equivalence Partitioning? 118
    • Что такое Boundary Value Analysis? 118
    • Что такое Error Guessing? 118
    • Что такое Cause/Effect? 119
    • Что такое Exhaustive testing? 119
    • Какие вы знаете комбинаторные техники тест-дизайна? 119
    • Что такое тестирование ортогональных массивов? (OAT - Orthogonal Array testing) 121
    • Что такое Domain analysis/testing? 122
    • Что такое Cyclomatic Complexity в тестировании ПО? 123
    • Что такое State Transition testing? 124
    • Что такое Scenario (use case) testing? 126
    • Что такое Decision Table testing? 127
    • Что такое Random testing? 128
    • Что такое Syntax testing? 129
    • Что вы знаете о Classification tree method? 129
    • Как мы узнаем, что код соответствует спецификациям? 130
    • Что включает в себя матрица отслеживания требований? (RTM - Requirement Traceability Matrix) 130
    • В чем разница между Test matrix и Traceability matrix? 131
    • Что такое анализ GAP? 131
    • Что такое граф причинно-следственных связей? (Cause Effect Graph) 131
    • В чем разница между предугадыванием ошибок и посевом? (Error guessing and error seeding) 131
    • Стили тестов? 131
    • Техники тестирования требований? 131
    • Что такое эвристики? 132
  • ----- Тестовые артефакты и документация (Test Deliverables/TestWare/test artifacts) ----- 135
    • Виды тестовой документации? 135
    • Какие отличия у тест-кейса высокого и низкого уровня? 138
    • Отличия Test Suite от Test Scenario? 138
    • Какие отличия у плана тестирования и стратегии тестирования? 138
    • В чем разница между тест-кейсом и чек-листом? 138
    • Чем Test case отличается от сценария тестирования? 139
    • Виды тест планов? 139
    • Что является основой для подготовки плана приемки? (PAP - Product Acceptance Plan) 140
    • Что такое тест-анализ/основа/база тестирования и условия тестирования ? (Test Analysis/Test Basis/Test conditions) 140
    • Что такое документ бизнес-требований (BRD)? 141
    • Что вы знаете о требованиях (уровни/виды и т. д.)? 141
    • Расскажите, какие есть требования к самим требованиям? 143
  • ----- Дефекты и ошибки ----- 145
    • Что такое дефект? 145
    • Классы дефектов? 145
    • Какие есть категории дефектов? 145
    • Error/Mistake/Defect/Bug/Failure/Fault? 145
    • Каково содержание эффективного сообщения об ошибке? 146
    • Несколько ключевых моментов, которые следует учитывать при написании отчета об ошибке? 146
    • Серьезность и Приоритет Дефекта (Severity & Priority) 147
    • Может ли быть высокий severity и низкий priority? А наоборот? 148
    • Жизненный цикл дефекта? 149
    • Что такое утечка дефектов и релиз бага? (Bug Leakage & Bug Release) 150
    • Что означает плотность дефектов при тестировании ПО? 150
    • Что означает процент обнаружения дефектов при тестировании ПО? 150
    • Что означает эффективность устранения дефектов при тестировании ПО? (DRP) 150
    • Что означает эффективность Test case в тестировании ПО? (TCE) 151
    • Возраст дефекта в тестировании ПО? 151
    • Что такое принцип Парето в тестировании ПО? 151
    • Каковы различные способы применения принципа Парето в тестировании ПО? 151
    • В чем основное отличие отладки от тестирования? (Debugging Vs. Testing) 151
    • Почему в программном обеспечении есть ошибки? 151
    • Что вы будете делать, если во время тестирования появится ошибка? 151
    • Как вы справляетесь с невоспроизводимой ошибкой? 151
    • Если продукт находится в производстве и один из его модулей обновляется, то необходимо ли провести повторную проверку? 152
    • Что такое анализ рисков? 152
    • Что такое скрытый дефект? (Latent defect) 152
    • Что такое маскировка ошибок, объясните примером? 152
    • Категории/подходы к отладке? (Debugging approaches) 152
    • Что такое Эффективность удаления дефектов? (DRE - Defect Removal Efficiency) 153
    • Что такое сортировка дефектов? (Bug triage) 153
  • ----- SDLC и STLC ----- 154
    • Что вы знаете о жизненном цикле разработки ПО? (SDLC - Software Development Lifecycle) 154
    • Что такое цикл/колесо Деминга? (Deming circle/cycle/wheel) 155
    • Модели разработки ПО? 155
    • Что такое Agile? 160
    • Что такое Scrum? 163
    • Какие вообще особенности у тестирования в Scrum? 165
    • В чем отличие Kanban от Scrum? 167
    • Что знаете о User stories в гибких подходах к разработке? 167
    • Что значит жизненный цикл тестирования ПО? (STLC – Software Testing Lifecycle) 168
    • Что вы знаете о техниках оценки теста? (Test Estimation) 170
    • В чем разница между SDLC и STLC? 170
    • Что такое быстрая разработка приложений? (RAD - Rapid Application Development) 170
    • Что такое разработка через тестирование (TDD - Test Driven Development)? 171
    • Что такое Value Driven Testing (тестирование на основе ценности)? 171
    • TDD в Agile Model Driven Development (AMDD) 173
    • Тестирование на основе моделей (MDD - Model-driven Development) 173
    • Тестирование на основе данных (DDT - Data Driven testing) 174
    • Тестирование на основе риска (RBT - Risk Based Testing) 174
    • Что вы знаете о потоковом тестировании? (BFT — Business Flow Testing) 175
    • В чем разница между coupling и cohesion? 175
  • ----- Тестирование в разных сферах/областях (testing different domains) ----- 177
    • Что такое веб-тестирование и как его производить? 177
    • Тестирование банковского ПО 182
    • Тестирование электронной коммерции (eCommerce) 183
    • Тестирование платежного шлюза (Payment Gateway) 186
    • Тестирование систем розничной торговли (POS - Point Of Sale) 187
    • Тестирование в сфере страхования (Insurance) 189
    • Тестирование в сфере телекоммуникаций (Telecom) 192
    • Тестирование протокола: L2 и L3 OSI 193
    • Тестирование интернета вещей (IoT - Internet of Things) 195
    • Что такое облачное тестирование? (Cloud testing) 197
    • Что такое тестирование сервис-ориентированной архитектуры? (SOA - Service Oriented Architecture) 199
    • Что такое тестирование планирования ресурсов предприятия? (ERP - Enterprise Resource Planning) 202
    • Тестирование качества видеосвязи WebRTC-based сервиса видеоконференций 203
    • Что такое тестирование ETL? 203
  • ----- Мобильное тестирование ----- 205
    • Каковы особенности в тестировании мобильных приложений? 205
    • В чем отличия тестирования мобильного приложения от десктопного? 205
    • В чем отличия тестирования мобильного приложения от web? 206
    • Как работает Android, какая у него архитектура? 207
    • Что такое тестирование прерываний (Interrupt Testing)? Причем тут Activity Lifecycle? 209
    • Как устроена iOS? 209
    • Жизненный цикл iOS-приложения? 211
    • Что вы знаете о симуляторах и эмуляторах? 214
    • Типы мобильных приложений? 214
    • Что основное проверить при тестировании мобильного приложения? 215
    • Как быть с покрытием девайсов? 217
    • Последнее обновление Android/iOS, что нового? 217
    • Основные различия iOS и Android? 217
    • Что такое Middleware? 218
    • Виды жестов и т.п.? 220
    • Как проверить использование процессора на мобильных устройствах? 221
    • Что вы знаете о PWA? 221
  • ----- Сети и около них ----- 222
    • Что такое http? 222
    • Компоненты HTTP? 222
    • Методы HTTP-запроса? 223
    • Что такое endpoint, ресурс? URI, URL, URN? 223
    • Что такое веб-сервис/веб-служба? (WS - Web service) 225
    • Отличие сервиса от сервера? 226
    • Отличие сервиса от веб-сайта? 226
    • Что такое REST, SOAP? В чем отличия? 226
    • Что такое JSON, XML? 227
    • Коды ответов/состояния сервера с примерами? (HTTP status codes) 228
    • Почему ошибка 404 относится к 4** - клиентской, если по идее должна быть 5**? 233
    • Какие еще бывают протоколы? 233
    • TCP/IP это? 233
    • Что такое куки (cookies)? Как их тестировать? 234
    • Что такое Web Storage? 236
    • В чем отличие статических и динамических веб-сайтов? 236
    • Отличие stateless и stateful? 236
    • Различия методов GET и POST? 237
    • Клиент - серверная архитектура? 237
    • Уровни OSI? 238
    • Что вы подразумеваете под потоковыми медиа? (Streaming media) 239
    • Основные команды Linux? 239
    • Почему важно тестировать в разных браузерах? 241
    • Адаптивный веб-дизайн vs. Отзывчивый веб-дизайн, в чем разница? (Adaptive Vs. Responsive) 242
    • Как сервер узнает, с какого типа устройства/браузера/ОС/языка вы открываете веб-сайт? (Например, для Adaptive design) 243
    • Чем отличается авторизация от аутентификации? 243
    • Как работает авторизация/аутентификация? Как сайт понимает, что ты залогинен? 243
    • Почему важно делать подтверждение e-mail при регистрации? 248
    • Что такое кэш и зачем его очищать при тестировании? 248
    • Что такое AJAX в вебе? 249
    • Как работает браузер (коротко)? 249
    • Как работает сотовая связь? 250
    • Как работает подключение к Wi-Fi? 251
  • ----- Базы данных ----- 252
    • Базовые понятия? 252
    • Может ли у ПО быть сразу несколько баз данных? 253
    • Что такое SQL? 253
    • Что вы знаете о NoSQL? 253
    • Что такое транзакция? 253
    • Что такое нормальные формы? 254
    • Понятие хранимой процедуры? 255
    • Понятие триггера? 255
    • Что такое индексы? (Indexes) 255
    • Какие шаги выполняет тестировщик при тестировании хранимых процедур? 256
    • Как бы вы узнали для тестирования базы данных, сработал триггер или нет? 256
    • Как тестировать загрузку данных при тестировании базы данных? 256
    • Основные команды SQL? 256
    • Подробнее о джойнах? (Join) 261
    • Типы данных в SQL? 261
    • Шпаргалки SQL 262
  • ----- Практическая часть ----- 265
    • Дана форма для регистрации. Протестируйте. 265
    • Определение серьезности и приоритета 268
    • Определение граничных значений и классов эквивалентности 268
    • Логические задачи 268
    • Еще примеры 269
    • Набор небольших задач по SQL 270
    • Тестирование чашки для кофе 272
    • Тестирование карандаша 273
    • HR: Как вы будете решать конфликты между членами вашей команды? 273
    • HR: Что делать, если разработчик утверждает, что найденный дефект таковым не является? 273
    • Вот тебе комп и работающий сайт. Сделай мне 401-ю ошибку 273
    • Пришел баг из продакшена, что делаем? 273
    • Оценить время на тестирование лендинга 274
  • ----- Источники ----- 275
  • ----- Поблагодарить автора ----- 277

About

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

Resources

License

Stars

Watchers

Forks

Packages

No packages published