Книга: Как тестируют в Google
Обзор тем
Обзор тем
— Риски. В Chrome OS много областей для тестирования: браузер, интерфейс взаимодействия с пользователем, прошивка, оборудование, поддержка сети, синхронизация данных пользователя, автоматические обновления и даже специфическое оборудование, созданное внешними производителями. Чтобы справиться с этими задачами, разработаем стратегию тестирования, основанную на рисках. Команда начнет тестирование с самой рискованной области, а потом будет последовательно спускаться вниз по списку, к менее рискованным областям. Мы будем полагаться на тщательное юнит-тестирование и качественный код команды разработки, которые составляют фундамент качества всего продукта.
— Автоматизация тестирования оборудования. Учитывая разнообразие оборудования и непрерывную сборку ОС, важно прогонять тесты для каждой сборки по всей матрице оборудования. Так мы быстро выявим регрессии и сможем диагностировать место возникновения проблемы, будь то код приложения, железо или конфигурация среды. Например, тест может падать только на оборудовании HP в браузере сборки Х при определенных настройках беспроводной связи.
— Поддержка быстрых итераций. У Chrome OS жесткий график выпуска, поэтому важно как можно раньше выявлять баги и определять точные условия их воспроизведения. Все тесты будут сначала запускаться на машине разработчика, чтобы баги не попадали в основную ветку кода. Большой набор автотестов ускорит выявление регрессионных багов.
— Открытые инструменты и тесты. Chromium OS — платформа с открытым кодом. К тому же есть определенные требования от производителей оборудования. Поэтому команда тестирования должна убедиться, что все инструменты и тесты могут быть открыты наружу и использоваться за пределами Google.
— Chrome OS — основная платформа браузера. Команда тестирования браузера Chrome перейдет к использованию Chrome OS как основной платформы. Обеспечение тестируемости кода, автоматизация тестов и остальные активности в первую очередь ориентируются на Chrome OS и только после — на другие платформы. Роль браузера Chrome станет решающей, ведь это единственный пользовательский интерфейс Chrome OS. Железо служит поддержкой браузеру и полностью работает на него. Для Chrome OS планка качества браузера Chrome должна быть очень высокой.
— Предоставление данных. Обеспечение качества — это не цель команды тестирования. Качество — забота всех участников проекта, даже внешних производителей оборудования и участников опенсорс-сообщества. Цель тестировщиков — снизить риски, найти как можно больше багов и проблем, предоставить команде метрики и общую оценку рисков. Тестирование, разработка, менеджмент и все заинтересованные стороны снаружи Google имеют право голоса и влияние на качество Chrome OS.
— Тестируемость и сотрудничество. Тестируемость всегда была камнем преткновения, особенно для команд Google apps, внешних разработчиков, да и внутри компании. Тестировщики скооперируются с командами Android и Webdriver, чтобы повысить тестируемость и полноценно поддерживать браузер Chrome в Chrome OS. Это увеличит производительность автоматизации тестирования в командах Google apps. Так Chrome будет постепенно становиться идеальной платформой для тестирования любых приложений со сторонними веб-страницами.
- Обзор тем
- Анализ рисков
- Непрерывное тестирование каждой сборки
- Ежедневное тестирование лучших сборок
- Тестирование перед выпуском
- Ручное и автоматизированное тестирование
- Разработка и качество тестов
- Каналы выпуска
- Обратная связь
- Репозитории тест-кейсов
- Панели мониторинга тестов
- Виртуализация
- Производительность
- Нагрузочное тестирование, продолжительное тестирование и тестирование стабильности
- Фреймворк выполнения тестов Autotest
- Производители железа
- Лаборатория проверки оборудования
- Фермы для сквозных автотестов
- Тестирование AppManager в браузере
- Тестируемость браузера
- Оборудование
- График
- Ключевые моменты тестирования
- Необходимые документы и ресурсы
- Обзор методов асинхронного ввода
- Обзор возможностей IBProvider
- 8.1.2. Обзор различных типов файловых систем
- Обзор операционных систем и ядер
- 8.13. ОБЗОР ОСОБЕННОСТЕЙ ПРОЕКТОВ ПРИКЛАДНЫХ СИСТЕМ
- 10.2. ОБЗОР CASE-СИСТЕМ
- 2.2.1 Обзор особенностей подсистемы управления файлами
- Обзор системного модуля PABCSystem
- Глава 10 Обзор системы
- Глава 11. Обзор экосистемы инструментов
- Обзор таск-менеджеров (систем управления задачами)
- Обзор современных средств управления доступом (ЗАО «Инфосистема Джет»)