Стратегии тестирования мобильных веб-приложений

Мобильные веб-технологии постоянно меняются в течение последних нескольких лет, что делает их совсем «непростыми». В этой статье я рассказываю о последних тенденциях и изменениях, происходящих в мобильной сети, и о том, как тестировщики могут подготовиться к ним.

Пару лет назад я решил сосредоточиться на тестировании мобильных приложений. Сегодня я достиг такого уровня, когда большая часть моего тестирования связана с мобильными веб-приложениями, и я считаю, что трачу много времени на изучение подходов, инструментов и сетей с другими мобильными тестировщиками, чтобы лучше понять предмет. Учитывая прошлые изменения, я в конце концов пришел к выводу, что это никогда не прекратится. Что мне нужно будет постоянно, постоянно вкладывать время и усилия в поддержание своих умений.

Прежде чем мы перейдем к тестированию, давайте потратим пару-другую на сами приложения. На высоком уровне у нас есть три типа мобильных приложений - native, web и hybrid. У каждого свои преимущества и недостатки. Родные приложения специально разработаны для работы на ОС устройства и прошивке аппарата, в то время как веб-приложения вытягивают ресурсы из Интернета каждый раз, когда он запускается (мобильные совместимые веб-сайты). Наконец, существуют гибридные приложения, которые имеют встроенную оболочку и реализуются с использованием веб-технологий. Я лично работал со всеми тремя типами и понимаю, что в каждом из них есть несколько нюансов. Тестировщик должен знать об этом и думать о целях тестирования, подходе к тестированию, разработке и выполнении теста, специфичном для типа тестируемого приложения.

Нынешнее направление в веб-эволюции - «agile веб-дизайн». Самый простой способ объяснить концепцию - сказать, что каждый веб-сайт должен «правильно» отображаться для каждого форм-фактора конкретного устройства. Другой способ сказать, что гибкий дизайн пытается устранить разрыв между настольным браузером и веб-интерфейсом на мобильном устройстве, создав веб-сайты, работающие как на полномасштабном настольном компьютере, так и на мобильном устройстве. Чтобы сделать это, сайт должен будет динамически меняться при просмотре на мобильном устройстве. Если мы получим автоматическое преобразование, то программисту потребуется создать только один сайт, что позволит сэкономить время разработки.

Конечно, этот автоматический перевод может иметь ошибки. Именно здесь возникают новые проблемы тестирования. Пользователи не хотят видеть ошибки и требуют доступа к Интернету на своем устройстве. Вот некоторые статистические данные о том, насколько широка эта разница в использовании:

  • 28 процентов использования Интернета происходит с мобильных телефонов.
  • 48% пользователей говорят, что, если они приходят на бизнес-сайт, который не работает на мобильных устройствах, они не воспринимают компанию всерьез
  • 62% компаний, разработавших сайт специально для мобильных устройств, увеличили продажи
  • 90 процентов людей используют несколько экранов для доступа в Интернет.
  • Около 91% граждан США имеют с собой мобильное устройство 24/7

Подведем итог: если ваши клиенты могут рассчитывать на то, что программное обеспечение будет работать на «своих» устройствах, то адаптивный веб-дизайн и стратегия тестирования для него, вероятно, должны быть в вашем учебном списке. Некоторыми хорошими примерами agile веб-сайтов являются веб-сайты Microsoft, Disney и Boston Globe.

Тестирование этих быстро реагирующих веб-сайтов является сложной задачей, поскольку существуют разные устройства, форм-факторы, разрешения экрана (более 200 уникальных разрешений экрана), разные браузеры и множество перестановок. Когда я хотел научиться тестировать быстро реагирующие сайты, не было «книги», поэтому я экспериментировал с разными подходами. Вот несколько вещей, которые я пробовал, что привело меня к изучению новых техник:

  • Работа в сети с помощью мобильных тестеров и консультантов как в моей компании, так и в других местах.

  • Слежка за новостями и технологиями в области мобильной разработки и тестирования

  • Исследование различных инструментов, помогающих в тестировании

  • Оценка того, как быстрые методы тестирования программного обеспечения могут помочь в мобильном тестировании

  • Исследование производственных дефектов. Это поможет сфокусировать тестирование на типах проблем, которые пользователи видят в приложении

  • Участие в мобильных конференциях.

Еще одна вещь, о которой нужно помнить, так как это то, что мобильный - такой обширный домен, поэтому важно попробовать разные подходы, а не просто прилепляться к набору сценариев тестовых сценариев и надеяться, что вы встретили так называемый «100-процентный охват». Эти тестовые случаи могут быть эффективными при освещении некоторых аспектов приложения, но они редко охватывают аспекты удобства использования и тестирования с точки зрения конечного пользователя. Не попадайте в ловушку написания подробных тестов для каждого сценария. Делая это, вы в конечном итоге потратите ценное время тестирования, которое могло быть потрачено на изучение приложения.

Видео: Джонатан Коль на STARWEST 2012 объясняет, чем мобильные тестирования отличаются от традиционных веб-приложений. Просмотр презентации и экспериментирование с идеями Коля - один из примеров того, как развивать свои навыки мобильного тестирования.

Подход «учиться и экспериментировать» хорошо работал для меня при тестировании моего первого адаптивного веб-сайта. Например, в моем проекте были реализованы совершенно новые страницы и функциональные возможности, которые взаимодействовали с несколькими системами. В этом случае нет смысла тратить время на составление подробных тестовых случаев, так как мы можем охватить лишь очень много взаимодействий. Вместо этого мы написали тестовые сценарии высокого уровня и рассмотрели дополнительные сценарии взаимодействия, выполнив пробное тестирование.

Наконец, никогда не бойтесь бросать вызов чему-либо, работая над мобильным веб-проектом. Всегда задавайте вопросы. Никто не может точно предсказать, как новая функция будет, может или будет использоваться в реальном мире, и это особенно актуально в мобильных и адаптивных вариантах веб-дизайна. Всегда есть проблемы, и наша работа в качестве тестировщиков - бросать вызов идеям и подвергать сомнению идеалистическое мышление.

А развить навыки успешного тестировщика Вам помогут наши курсы тестировщиков - звоните и записывайтесь прямо сейчас!