- Кратко
- Как выбрать
- Кто этим занимается
- Уже выпущенные продукты
- Новые продукты (+ ссылки на ресурсы)
- Малопопулярные девайсы и старые версии ОС
- При чем тут риск-тестирование
- Математика совместимости: сколько нужно девайсов
- Если сроки горят
- Бонус: справочник по странам и регионам
Кратко
Различия между устройствами — один из важных факторов, на которые следует обращать внимание при разработке нового продукта. Никто не гарантирует, что сайт или приложение будет корректно работать на всех устройствах. Даже небольшие различия в аппаратном и программном обеспечении могут существенно повлиять на user experience. Поэтому важно проверять работу продукта на разных устройствах, платформах, версиях ОС, и в разных браузерах. Все эти операции подпадают под общий термин тестирование совместимости.
Теоретически, чем больше устройств используется для тестов, тем лучше «покрытие рынка». Тестируя сайт или приложение на максимальном количестве устройств, можно найти и устранить максимально возможное количество багов. Это звучит очевидно, но на практике не всегда работает.
Во-первых, охватить 100% рынка невозможно. Во-вторых, это и не обязательно. Например, если устройства продаются строго в определенных регионах, другими вполне можно пренебречь.
Тестирование на разных устройствах теоретически должно включать максимально широкое сочетание моделей смартфонов и ПК, версий ОС и браузеров. В большинстве случаев это не означает все возможные комбинации. Как охватить достаточное количество сценариев использования, не задействуя слишком много устройств и не теряя времени? Кто составляет список устройств и регионов?
Как выбрать устройства, ОС и браузеры для тестирования совместимости
Разнообразие устройств и установленного на них программного обеспечения неуклонно растет. Как охватить достаточное (для получения надежных результатов) количество моделей смартфонов при тестировании на мобильных устройствах? Как правильно тестировать сайты на разных ноутбуках и ПК? Неопытный тестировщик подумает, что лучше охватить максимум возможных вариантов.
Но тестировать продукт на всех доступных устройствах обычно не стоит. Во-первых, это займет много времени. Во-вторых, стоимость тестирования неоправданно возрастет. В-третьих, используя меньшее количество устройств и вариантов ПО, можно получить такое же представление о качестве продукта, как при использовании большего их количества.
Тестирование на всех устройствах и со всем возможным ПО может быть оправдано только в редких случаях.
Кто подбирает устройства для тестирования совместимости
Иногда клиенты приходят с готовым списком устройств и другими параметрами. При составлении этого списка они ориентируются на собранные ими пользовательские данные и статистику.
Если у клиента своего списка нет, то его придется составлять QA-команде. Они сделают это на основе своего опыта и статистики популярности устройств и ПО (и в конце статьи мы дадим справочные данные, по крайней мере на 2022 год).
Тестирование совместимости уже выпущенных на рынок продуктов
Всегда начинайте с изучения и анализа рынка. Определить комбинации устройство-ОС-браузер для тестирования уже существующего продукта всегда легче. Можно просто проследить, с каких платформ и браузеров приложение или сайт получает трафик.
Например, загляните в Google Analytics. Или посмотрите данные с общим количеством посещений и трафиком по странам и источникам в SimilarWeb. Используйте любые ресурсы, которые помогут оценить стек технологий, используемый пользователями.
Тестирование новых продуктов
Если еще не знаете своих пользователей, проанализируйте, что популярно на рынке сейчас. Тренды. На основании этих данных можно подобрать всего лишь 5-10 устройств. Для начала определите:
- ведущих производителей устройств
- наиболее распространенные размеры и пропорции экрана
- самые популярные ОС и их версии
- самые популярные браузеры
- различия этих данных в разных регионах
Есть ресурсы, которые предоставляют необходимую информацию бесплатно. Например, на StatCounter можно найти данные о рынках по: производителям устройств, по ОС и браузерам, статистику по разрешениям экрана и многое другое. Там же информация по регионам, странам, и т. д. На таких ресурсах можно найти много полезной информации для тестирования сайтов и приложений для iOS и Android.
Также могут быть полезны:
- Android Dashboards — обзор характеристик активных устройств
- Apple’s Official Support Pages — данные об использовании операционных систем iOS и iPad
- ScientiaMobile — обзорный отчет по мобильным устройствам
- InsightPortal – информация о мобильных и десктопных версиях ОС, топовых устройствах и браузерах, используемых по всему миру, в Европе и Северной Америке.
Работа с менее популярными устройствами и спецификациями
Может возникнуть вопрос, как с остальными версиями браузеров и ОС, а также малопопулярными моделями смартфонов и ПК.
В общем, можно с уверенностью предположить, что если продукт работает на самых популярных устройствах и на самом распространенном ПО, то и на менее популярных тоже будет работать.
Но есть смысл протестировать базовый функционал на свежих версиях браузера и ОС, так как не все пользователи включают автоматическое обновление. Это касается тестирования как сайтов, так и мобильных приложений.
Тестирование на основе рисков
Если известно о возможной проблеме в определенной области, чаще всего имеет смысл потратить время на ее тестирование. Это касается случаев, когда баг проявляется при запуске приложения (сайта) в конкретном браузере или его версии, в какой-то определенной ОС, при конкретном разрешении экрана.
При работе с проблемными областями тестировщики обычно полагаются на свой предыдущий опыт.
Например, Internet Explorer всегда был известен как проблемный браузер. И невзирая на куда бОльшую популярность других браузеров, тестирование офисного ПО в Internet Explorer имело смысл из-за того, что он был предустановлен в Windows.
Другой пример: некоторые части пользовательского интерфейса могут не работать на устройствах с низким разрешением экрана. В связи с этим, возможно, стоит протестировать адаптивный мобильный дизайн на устройствах с низким разрешением экрана, например iPhone SE с дисплеем 640×1136 пикселей.
Математика совместимости: сколько устройств достаточно
По данным BrowserStack, еще в 2019 году существовало 63 000 возможных комбинаций браузер-платформа-устройство. Но при этом можно достичь 70-80% охвата устройств, протестировав сайт на/в:
- устройствах трех видов (мобильные, десктопные и планшеты);
- двух версиях iOS;
- пяти стандартных версиях Android и восьми реализациях от отдельных производителей;
- шести семействах браузеров;
- последних версиях браузеров каждого семейства;
- десяти разрешениях экрана.
Это если речь идет о тестировании сайта. Если же говорим о тестировании мобильных приложений, список будет короче. Имейте в виду, что можно комбинировать вышеуказанные параметры по ситуации. Нет необходимости тестировать каждую возможную комбинацию, просто не забудьте охватить каждую опцию хотя бы по разу.
Если сроки горят
Нехватка времени — не повод отказываться от тестирования совместимости. Перед релизом нужно проверить хотя бы несколько вариантов. Например, если продукт — сайт или веб-приложение, проверьте его на последних версиях:
- Google Chrome, Firefox и Microsoft Edge в Windows;
- Safari и Google Chrome на Mac;
- iPhone и смартфоне Android;
- iPad и планшете Android.
Если речь идет о мобильном приложении, протестируйте его как минимум на двух iPhone и двух моделях Android, iPad и планшете Android.
Можете расширить этот список, ориентируясь на время, которое тратится на тестирование на одном устройстве.
Многое зависит от тестируемого продукта. Если это большой информационный сайт, баги будут практически одинаковыми независимо от характеристик устройств и программного обеспечения. А при тестировании мобильных приложений нет необходимости охватывать большое количество комбинаций.
На каких устройствах, ОС и браузерах тестировать
Чтобы лучше сориентироваться в ситуации на рынке, просмотрели данные на StatCounter по состоянию на 2022 год.
Доли ведущих производителей устройств на рынке
Смартфоны:
По всему миру | Северная Америка |
Samsung (28,22%) Apple (27,57%) Xiaomi (12,24%) Huawei (6,53%) Oppo (5,25%) | Apple (54,15%) Samsung (28,47%) Motorola (5,17%) LG (2,9%) Google (2,23%) |
Европа | Азия |
Samsung (32,34%) Apple (29,98%) Xiaomi (15,11%) Huawei (9,56%) Oppo (2,26%) | Samsung (24,39%) Apple (17,78%) Xiaomi (16,66%) Oppo (9,21%) Vivo (8,22%) |
США | Россия |
Apple (57,65%) Samsung (28%) Motorola (4,53%) LG (2,89%) Google (2,38%) | Samsung (25,13%) Apple (24,54%) Xiaomi (23,47%) Huawei (12,5%) Realme (3,06%) |
Беларусь | Украина |
Xiaomi (33,72%) Samsung (21,93%) Apple (20,22%) Huawei (15,86%) Lenovo (1,39%) | Xiaomi (34,84%) Samsung (20,97%) Apple (15,64%) Nokia (7,27%) Huawei (6,81%) |
Планшеты:
По всему миру | Северная Америка |
Apple (53,94%) Samsung (28,11%) «NoName» (6%) Amazon (4,66%) Huawei (3,13%) | Apple (56,08%) Samsung (21,01%) Amazon (10,97%) «NoName» (9,24%) Alcatel (0,64%) |
Европа | Азия |
Apple (48,38%) Samsung (32,5%) Huawei (5,97%) «NoName» (5,29%) Amazon (3,83%) | Apple (56,93%) Samsung (29,2%) Huawei (3,76%) «NoName» (3,46%) Asus (2,42%) |
США | Россия |
Apple (55,57%) Samsung (19,54%) Amazon (12,7%) «NoName» (9,75%) Alcatel (0,7%) | Apple (37,85%) Samsung (36,65%) Huawei (12,04%) «NoName» (7%) Xiaomi (1,91%) |
Беларусь | Украина |
Samsung (37,21%) Apple (34,38%) Huawei (14,46%) Xiaomi (5,04%) «NoName» (4,83%) | Samsung (42,79%) Apple (24,02%) Huawei (8,95%) Asus (6,86%) «NoName» (6,77%) |
Популярные операционные системы:
По всему миру | Северная Америка |
Android (41,56%) Windows (31,15%) iOS (16,85%) OSX (6,3%) «NoName» (1,63%) | Windows (30.78%) iOS (27.89%) Android (23.35%) OS X (12.2%) Chrome OS (3.49%) |
Европа | Азия |
Windows (37.03%) Android (35.81%) iOS (16.19%) OS X (7.39%) Linux (1.21%) | Android (54,03%) Windows (26,62%) iOS (12,77%) OSX (3,05%) «NoName» (1,98%) |
США | Россия |
iOS (30,05%) Windows (29,05%) Android (22.04%) OS X (12.83%) Chrome OS (3.87%) | Windows (54,72%) Android (28,53%) iOS (9,61%) OS X (3,34%) «NoName» (1,16%) |
Беларусь | Украина |
Windows (44,18%) Android (39,15%) iOS (10,15%) OS X (3,46%) «NoName» (1,83%) | Windows (52,27%) Android (34,8%) iOS (6,61%) OS X (2,84%) «NoName» (1,72%) |
Браузеры:
По всему миру | Северная Америка |
Chrome (64.53%) Safari (18.84%) Edge (4.05%) Firefox (3.4%) Samsung Internet (2,82%) | Chrome (52,09%) Safari (33,32%) Edge (5,91%) Firefox (3,56%) Samsung Internet (2,02%) |
Европа | Азия |
Chrome (59,07%) Safari (19,31%) Firefox (5,84%) Edge (5,44%) Samsung Internet (3,34%) | Chrome (72,92%) Safari (12,54%) Samsung Internet (2,99%) Edge (2.56%) Firefox (1,94%) |
США | Россия |
Chrome (49,7%) Safari (35,95%) Edge (5,91%) Firefox (3,53%) Samsung Internet (1,92%) | Chrome (52,74) Yandex Browser (17.13%) Safari (10%) Opera (8.5%) Firefox (5.35%) |
Беларусь | Украина |
Chrome (64.02%) Safari (11.54%) Opera (8.91%) Yandex Browser (6.75%) Firefox (4.03%) | Chrome (55.05%) Opera (21.62%) Safari (6.92%) Firefox (4.44%) Instabridge (4.42%) |
Итоги
При создании новых программных продуктов важно учитывать их совместимость с различными устройствами и ПО. Тестирование совместимости не всегда ограничивается проверками на устройствах iOS и Android. Нужно также учитывать разные браузеры, операционные системы и их версии, в разных комбинациях. Тщательное тестирование совместимости поможет обеспечить хороший user experience максимальному количеству людей. При этом не обязательно использовать очень много устройств, огромную ферму. Для обеспечения максимального покрытия важнее выбрать правильные комбинации устройств, ОС и браузеров для конкретного продукта.
***