Несколько лет назад я попросил своего друга ввести ключевое слово в поисковике Google и открыть третью ссылку, появившуюся в результатах. Несмотря на то, что мы использовали одно и то же слово для поиска, результаты получились разные.
Это заставило меня заглянуть на страницу поддержки Google, где я нашел следующую запись: “Когда вы ищете в Google, ваши результаты адаптируются под ваш текущий регион”. Я обнаружил, что практически все, что мы видим, подстраивается под регион, в котором мы находимся. Даже список фильмов на Netflix меняется в зависимости от региона.
В этой статье мы разберем, что такое тестирование геолокации, а также рассмотрим соответствующие методы и инструменты.
Содержание
- Влияние геолокации
- Почему геолокацию нужно тестировать?
- Как проводить тестирование геолокации?
- Инструменты для тестирования
- Заключение
Влияние геолокации
Друзья, поддержите нас вступлением в наш телеграм канал QaRocks. Там много туториалов, задач по автоматизации и книг по QA.
Слово “геолокация” появилось в результате соединения двух слов: “география” и “местоположение”. Определение текущего географического положения человека с помощью электронного устройства часто относят к геолокации.
С учетом стремительного роста числа устройств, подключенных к Интернету, геолокация становится очень важной. Некоторые компании, такие как Uber, полностью зависят от геолокации. Их работа тесно связана с использованием GPS или Google Maps (еще одно известное приложение, основанное на геолокации).
Геолокация присутствует в нашей повседневной жизни, оказывая влияние на безопасность и защиту наших персональных данных. Учитывая, что работа большинства приложений зависит от геолокации, то ее тестирование должно быть очень приоритетным. Так ли это?
Почему геолокацию нужно тестировать?
Тестирование геолокации – это тестирование приложения для различных местоположений. Линии на карте мира – это не просто границы. Многое остается неизменным, но многое и меняется.
Тестирование геолокации имеет важное значение, поскольку оно позволяет убедиться, что все сценарии использования приложения выполняются правильно.
Можно выделить несколько основных областей, которые демонстрируют важность тестирования геолокации:
- Получение данных о местоположении. Мы можем определить геолокацию устройства, чтобы использовать ее непосредственно в наших приложениях, например, в Google Maps, Uber или в приложении для доставки еды.
- Отображение результатов поисковых систем в соответствии с законами о распространении контента. Некоторые страны ограничивают показ определенного контента на своей территории. Какой бы контент вы ни показывали: видео, изображения или любой товар в электронной коммерции, он должен соответствовать национальным законам. Тестирование геолокации помогает нам проверить, соблюдаем ли мы эти законы.
- Настройка рекламных объявлений. Тестирование геолокации также помогает определить, соответствует ли наша реклама региону. Сфера рекламы это огромная индустрия, и правильная подача рекламы (даже на самом малом уровне) имеет большое значение.
- Безопасность. Один из важных аргументов в пользу проведения тестирования геолокации связан с тем, что безопасность может обеспечиваться проверкой местоположения. Например, приложение Google Pay переводит деньги от отправителя к получателю напрямую. Оно использует геолокацию для определения подозрительных транзакций. Простой пример: если транзакция с моего счета происходит из Чикаго в 21:02, а другая – из Лондона в 21:36, значит, явно что-то не так. Тестирование геолокации в сочетании с некоторыми сервисами проверки уязвимостей позволит обеспечить безопасность ваших веб-страниц.
Тестирование геолокации должно проводиться тщательно, и игнорировать его – большой риск, поскольку даже одна простая ошибка в транзакции, зависящей от геолокации, может привести к неприятным для пользователя последствиям.
Тестирование геолокации часто сочетается с кроссбраузерным тестированием, при котором тесты геолокации повторяются в нескольких браузерах, чтобы убедиться, что все работает хорошо на всех браузерах и устройствах.
Как проводить тестирование геолокации?
Давайте посмотрим, как можно выполнить тестирование геолокации нашего приложения – от сложного к самому простому.
1. Привлечение людей со всего мира
Самый утомительный и сложный метод тестирования геолокации – это реальное использование приложения из нескольких мест. Вместо того, чтобы путешествовать самостоятельно, лучше обратиться за помощью к единомышленникам.
Отличным инструментом для этого может стать GitHub. Через GitHub можно связаться с тестировщиками, которые смогут загрузить и протестировать ваше приложение из разных точек мира. Но это займет много времени и потребует немало усилий.
Существуют платформы для краудтестинга (привлечение других тестировщиков для оценки качества приложения), такие как utest и testlio, которые также можно использовать. Cамым большим недостатком в этом случае может стать доверие к незнакомым людям и предоставление им конфиденциальной информации (например, исходного кода), которая может быть использована не по назначению.
2. Использование VPN для смены местоположения
Более простым способом является установка и использование VPN для смены текущего местоположения. VPN активно используются в различных областях. Например, в организациях их применяют для создания защищенной сети, а простые обыватели с помощью VPN могут поиграть в игру, запрещенную в их текущем регионе.
Однако VPN не являются сверхэффективными, и иногда сторонние приложения (из которых вы, возможно, получаете данные) распознают и блокируют использование VPN. Это может несколько затруднить тестирование. Лучшие VPN-провайдеры решают эту проблему, предоставляя расширенные функции для скрытия местоположения и обеспечения беспрепятственного тестирования.
3. Автоматизированное тестирование геолокации с помощью Testsigma
Наиболее простым и эффективным способом проведения тестирования геолокации является использование специальных инструментов. Один из таких инструментов – Testsigma. Этот инструмент позволяет проводить геолокационное тестирование с помощью автоматизации.
Чтобы выполнить тестирование геолокации с помощью Testsigma, нам необходимо провести тестирование для трех различных платформ: веб-приложения, приложения для iOS и нативного приложения для Android.
Веб-приложение
Для проведения геолокационного тестирования веб-приложения необходимо установить несколько параметров в Testsigma:
capabilities.setCapability("selenium_version", "3.141.59"); capabilities.setCapability("timezone", "UTC-8:00"); capabilities.setCapability("geoLocation", "US"); capabilities.setCapability("chrome.driver", "78.0")
- selenium_version – версия Selenium, которая будет использоваться для выполнения тестов.
- timezone – часовой пояс, в котором будет выполняться тест. В приведенном выше примере часовой пояс установлен на UTC-8, что соответствует часовому поясу Калифорнии.
- geoLocation – в качестве геолокации берется код страны, в которой мы хотим, чтобы выполнялись наши тесты. Например, здесь будет имитация запуска веб-приложения из Соединенных Штатов.
iOS
Тестирование геолокации на iOS-устройствах может быть выполнено с помощью установки часового пояса непосредственно в настройках устройства.
Нативное приложение Android
Тестирование геолокации в нативном приложении на Android можно выполнить с помощью параметра browserstack.timezone
.
Тестирование геолокации также можно выполнить с помощью эмулятора Android и сторонних плагинов.
Инструменты для тестирования геолокации
Существует ряд инструментов, позволяющих проводить тестирование геолокации на различных устройствах. Ниже описаны наиболее популярные из них.
1. Testsigma
Testsigma – облачный онлайн-инструмент для автоматизации тестирования. Он позволяет проводить геолокационное и кроссбраузерное тестирование. Testsigma обладает рядом возможностей, которые могут быть применены для создания тест-кейсов.
2. Browserstack
Browserstack позволяет проверить работу приложения/веб-сайта из различных точек земного шара. Этот инструмент предоставляет функционал геотегинга (может помочь в поисках различной информации, привязанной к определённой местности), геотаргетинга (показ рекламы с учетом точного географического местоположения пользователей), геофенсинга (это виртуальная область вокруг любых GPS ) и т.д.
3. Инструменты разработчика Google Chrome
Google Chrome уже оснащен функциями геолокации, и тестировщики могут изменить свое местоположение на любое из заданного списка в разделе инструментов разработчика с помощью расширения “Location Guard” .
Чтобы изменить местоположение в Google Chrome, нажмите Ctrl + Shift + P
(Cmd + Shift +P
). Введите “Sensors” (Датчики), чтобы открыть список датчиков, из которого необходимо выбрать “Geolocation” (Геолокация). В разделе “Геолокация” откроется список для выбора местоположения.
Заключение
Сегодня тестирование геолокации занимает важное место наряду с другими видами тестирования. Это объясняется тем, что приложение будет бесполезным, если оно не адаптировано в соответствии с предпочтениями пользователя. Тестирование геолокации также позволяет убедиться в том, что приложение обеспечивает соблюдение региональных законов.
Для тестирования геолокации тестировщик может выбрать любой специализированный инструмент, ориентируясь на свои требования и предпочтения. Однако рекомендуется использовать “облачный” инструмент, который позволяет точно определять местоположение, а также предоставляет другие дополнительные возможности, которые трудно имитировать при ручном тестировании.
Поделитесь своими мыслями на данную тему в комментариях ниже.
Перевод статьи «Geolocation Testing: How Can I Test My Website in Different Locations?».