Концепция тестирования совместимости
Тестирование совместимости — это тип тестирования программного обеспечения, который используется для обеспечения совместимости встроенной системы/приложения/веб-сайта с различными другими объектами, такими как другие веб-браузеры, аппаратные платформы, пользователи, операционные системы и т. д. Этот тип тестирования помогает понять, как продукт будет работать в конкретной среде.
Для облегчения понимания аппаратное обеспечение, программное обеспечение, платформа и другие объекты могут быть абстрагированы в концепцию испытательного оборудования. В сочетании с практическим опытом тестирования совместимости проекта можно выделить следующие характеристики:
1. В проектах поставки испытуемые объекты часто сильно зависят от испытательного оборудования. Если взять в качестве примера тестирование WEB-продукта, то обычно вам необходимо учитывать: браузер, версию браузера, операционную систему, размер экрана, разрешение и т. д. Иногда также необходимо учитывать параметры и модели аппаратных устройств. Любые различия могут привести к тому, что результаты испытаний будут отличаться от ожидаемых.
2. Совместимость является обязательным условием для других типов испытаний. В секторе гибкого тестирования различные типы тестов разделены по четырем измерениям. Хотя тестирование совместимости в нем не фигурирует, испытуемый и испытательное оборудование должны поддерживать «стабильное» состояние перед проведением различных типов тестов. . Я рассматриваю это «стабильное» состояние как необходимое, но недостаточное условие совместимости с другими тестами.
3. Больше испытательного оборудования означает больше потребления ресурсов. Когда уровень тестирования тестировщика фиксирован, каждое дополнительное тестовое оборудование увеличивает его рабочую нагрузку, не говоря уже о стоимости разработки и стоимости приобретения и настройки тестовой среды.
4. Ни один продукт не будет стремиться к совместимости со всеми доступными устройствами. По сути, все проекты будут ограничивать тестовое оборудование в зависимости от позиционирования продукта, типа бизнеса, групп пользователей и других параметров для достижения целей доставки. Этот процесс часто завершается на этапе предпродажной подготовки или запуска.
Подготовьте список испытательного оборудования
Очевидно, что в сегодняшней реальности фрагментированных устройств и платформ способ определения тестового оборудования играет ключевую роль в тестировании проекта на совместимость. Список оборудования для проверки совместимости может быть проверен и подтвержден по следующим аспектам:
1. На основе позиционирования на рынке и позиционирования продукта.
Позиционирование на рынке относится к выбору компанией целевых потребителей или целевых потребительских рынков; тогда как позиционирование продукта относится к выбору компанией того, какие продукты будут удовлетворять потребности целевых потребителей или целевых потребительских рынков. Теоретически сначала следует заняться позиционированием на рынке, а затем позиционированием продукта. Позиционирование продукта — это процесс объединения выбора целевых рынков с корпоративными продуктами, который является работой корпоративного и продуктово-ориентированного позиционирования на рынке.
На ранних этапах разработки оборудования для испытаний на совместимость тестировщикам необходимо учитывать исходные данные о позиционировании продукта, чтобы ограничить категории испытательного оборудования.
Вообще говоря, компании ожидают, что продукты будут адаптированы для различных целей. С точки зрения стоимости проекта и равномерности рисков они разделят проект и завершат разработку продукта на более мелкие части поэтапно. Разделение еще больше ограничит разнообразие испытательного оборудования. Например, компания, занимающаяся информационными технологиями, надеется разработать платформу социальных сетей, основанную на взаимоотношениях с пользователями, уделяя особое внимание сообществам по интересам, обмену информацией в режиме реального времени и взаимодействию с другими. При условии, что экосистема iOS идеальна, целевые пользователи активно ее используют, а пользовательский опыт лучше, бизнес-сторона может дать команде разработчиков следующую информацию: необходимо разработать приложения, которые можно будет установить и использовать на основной iOS. устройства.
2. В зависимости от целей доставки
Цели доставки должны учитывать различные условия и ограничения самой доставки, которые могут включать такие аспекты, как ценность бизнеса, техническая сложность, тип продукта, категория пользователей, позиционирование на рынке и т. д. Из этих ключевых аспектов можно выделить два метода сбора испытательного оборудования:
Исследование. Проведение исследований тестового оборудования с учетом региона, анализа конкурентной продукции, доли рынка операционных систем, доли рынка браузеров и других условий. Соответствующие отраслевые отчеты в основном получаются через консалтинговые компании или соответствующие данные получаются через платформы больших данных.
Рисунок 1. Доля рынка поставщиков мобильных телефонов и планшетов в Китае с января 2022 г. по январь 2023 г. (источник данных: https://gs.statcounter.com/)
Скрытые точки: используйте технологию скрытых точек для уже выпущенных продуктов, чтобы получить пользовательское оборудование и другую информацию в качестве поддержки данных для тестирования совместимости.
Рисунок 2. Пример статистики использования оборудования конечными пользователями, обращающимися к определенному веб-сайту с помощью технологии отслеживания.
Основной выпуск: получите информацию о динамике выпуска устройств производителями мобильных устройств, спрогнозируйте, повлияют ли новые устройства на продукт, и, таким образом, повлияйте на процесс принятия решения о совместимости тестируемого устройства.
Отзывы о продуктах: онлайн-пользователи сообщили о проблемах совместимости уже выпущенных продуктов.
3. Технологический
На основании уточнения позиционирования продукта и целей поставки команда разработчиков определит выбор технологии для процесса разработки. Различные варианты технологий также имеют требования к рабочему оборудованию. На рисунке ниже показаны минимальные требования к оборудованию для Teams — интеллектуального инструмента групповой совместной работы на основе чата. Испытательное оборудование для аппаратного и программного обеспечения, не отвечающее этому требованию, больше не имеет испытательной ценности.
Рис. 3. Руководство пользователя Teams с указанием минимальных требований к оборудованию для установки и использования (источник изображения: https://learn.microsoft.com/en-us/microsoftteams/hardware-requirements-for-the-teams-app).
4. Цели тестирования
На уровне стратегии тестирования различные типы испытаний также влияют на выбор испытательного оборудования. В веб-проектах больше внимания уделяется тестированию пользовательского интерфейса, такому как макет интерфейса, логика взаимодействия компонентов, адаптация экрана, шрифты элементов, время рендеринга браузера (производительность) и т. д. Поэтому размер экрана устройства, разрешение, тип браузера, версия браузера и т. д. Необходимо учитывать операционную систему и другие факторы; в проектах приложений больше внимания уделяется функциональному тестированию, такому как загрузка, установка, удаление, функции, взаимодействие и т. д., поэтому необходимо учитывать больше факторов, таких как операционная система и параметры оборудования. быть рассмотрено.
Следует отметить, что существует тесная взаимосвязь между целями тестирования и выбором испытательного оборудования. Цели тестирования предназначены для обеспечения высококачественной реализации проекта и могут быть гибко изменены. Если выяснится, что тестовая модель больше не имеет ценности для тестирования или что разные модели работают одинаково, необходимо провести коммуникацию и внести коррективы с бизнес-командой и командой разработчиков.
Рисунок 4. Таблица размеров экрана обычных устройств.
Как показано на рисунке выше, если размер и разрешение экрана одинаковы, а параметры экрана одного и того же производителя схожи, выбор одной модели может соответствовать условиям испытаний.
5. Тестовые ресурсы
При условии, что испытательное оборудование в основном понятно, необходимо учитывать ресурсы тестирования нынешней группы поставки. Большее тестовое оборудование также означает, что будет потребляться больше тестовых ресурсов (иногда стратегия тестирования также сильно влияет на потребление тестовых ресурсов. Например, стратегия тестирования предусматривает регрессию внутри итераций, что также увеличивает рабочую нагрузку тестировщиков). Вы можете расставить приоритеты для тестовых устройств, провести основное тестирование на одном или двух устройствах и выполнить тестирование Happypath на остальных устройствах. Или попробуйте скоординировать больше ресурсов по тестированию с текущим проектом. Или удалите оборудование с повторяющимися типами и низким уровнем ошибок и общайтесь с клиентами и командами.
Создать пул ресурсов испытательного оборудования
После определения ресурсов испытательного оборудования тестировщик подумает о том, как получить доступное оборудование. Обычно используются следующие методы:
Эмулятор в основном использует аппаратное или программное обеспечение, чтобы заставить компьютерную систему (называемую хостом) вести себя аналогично другому устройству или программе (называемой гостем). Эмуляторы обычно позволяют запускать программное обеспечение или периферийные устройства, разработанные для клиентской системы, на хост-системе. Виртуальная машина (ВМ) — это эмулятор компьютерной системы. Она имитирует полную компьютерную систему с полными аппаратными функциями системы посредством программного обеспечения и работает в полностью изолированной среде, которая может выполнять функции физического компьютера.
Вообще говоря, нет необходимости намеренно определять и различать виртуальную технологию. Тестировщики больше ориентируются на результаты этой технологии, то есть они могут использовать программное обеспечение/инструменты для создания среды, соответствующей программному/аппаратному обеспечению испытательного оборудования. На рынке представлены различные конфигурации мобильных телефонов и планшетов. В настоящее время виртуальные устройства зачастую не могут заменить реальные устройства, но часто используются для отладки при разработке и тестировании. Однако для ПК и Mac системные факторы обычно являются ключом к работе продукта, а при разработке и тестировании обычно для выполнения рабочих задач используются виртуальные машины.
Рис. 5. VMware Fusion использует виртуальную технологию для использования Windows 11 в macOS (Источник изображения: https://blogs.vmware.com/teamfusion/2021/10/fusion-12-2-now-available.html).
Реальными аппаратными устройствами, оснащенными операционными системами, могут быть компьютеры, планшеты и мобильные телефоны. Тестировщики часто могут обнаружить проблемы совместимости в реальных сценариях, тестируя реальные машины с точки зрения конечных пользователей. Покупка на рынке или аренда на платформах оборудования являются распространенными методами приобретения. Реальные машины обычно используются при тестировании мобильных устройств, таких как мобильные телефоны и планшеты.
Облачное тестирование — это новая модель, которая предоставляет услуги тестирования на основе облачных платформ. Для предприятий и разработчиков мы развертываем и используем инструменты тестирования, испытательное оборудование и инженеров по тестированию через облако, чтобы удовлетворить потребности полного цикла тестирования корпоративного программного обеспечения и систем, таких как функциональность, совместимость, производительность и безопасность. С помощью сетевых протоколов и других средств вы можете локально подключиться к целевой реальной машине, размещенной в компьютерном зале, для тестирования. Он обладает характеристиками множественного оборудования, удобством, низкими затратами на техническое обслуживание и готов к использованию. Вообще говоря, платформа облачного тестирования предоставляет реальные мобильные телефоны и планшеты, размещенные в компьютерном зале.
Рисунок 6. Сравнение некоторых распространенных платформ облачного тестирования.
Выполнить методы тестирования совместимости
Выбор методов испытаний на основе сценариев применения
Ручное тестирование — это все ручное тестирование, и для достижения целей тестирования могут использоваться сторонние инструменты. Ручное тестирование представляет собой большую рабочую нагрузку и потребляет серьезные ресурсы, но оно позволяет выявить очевидные проблемы совместимости и больше подходит для сценариев с небольшим количеством тестового оборудования и сложными функциональными точками тестирования.
Автоматизированное тестирование с помощью сред автоматизированного тестирования, таких как Selenium, Appium и Cypress, реализует автоматизацию тестовых случаев и завершает проверку совместимости в конкретных сценариях. Автоматизированное тестирование выполняется быстрее, чем ручное тестирование, и может сэкономить трудозатраты. Однако из-за большей детализации автоматизированных тестовых примеров оно по-прежнему не может полностью заменить ручное тестирование.
Ручное и автоматическое тестирование могут сосуществовать в цикле реализации одного и того же проекта. Гибкая настройка методов выполнения может в некоторой степени высвободить ресурсы тестирования, повысить эффективность тестирования и сэкономить затраты.
Рисунок 7. Процесс устойчивого тестирования, сочетающий ручное и автоматическое тестирование в контексте определенного проекта.
наконец
Тестирование совместимости — это не простой тип тестирования, ориентированный на выполнение. Определение стратегии тестирования совместимости требует систематического разделения всего цикла тестирования на иерархии, установки условий фильтрации между иерархиями на основе данных или фактов и установления непрерывности между иерархиями и методами.
Рисунок 8. Многоуровневый подход к тестированию совместимости.
С точки зрения стратегии тестирования тестировщикам необходимо не только понимать, как объекты тестирования совместимости проверяются от уровня продукта до бизнес-уровня, но также необходимо проверять список тестируемых объектов с точки зрения целей тестирования, ресурсов тестирования и т. д. и техническая реализация. На уровне исполнения — через виртуальный. Создайте ресурсы испытательного оборудования с помощью облачных платформ тестирования, реальных машин и т. д. и используйте ручные, автоматические или комбинированные методы тестирования для гибкого проведения тестов на совместимость. Тестирование совместимости предполагает выбор большого количества оборудования, технологий и методов выполнения. Улучшение тестирования совместимости — это процесс непрерывных исследований и практики. Выше приведены некоторые из моих мыслей по поводу тестирования совместимости. Каждый может обсудить это.