Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

Функциональное тестирование программного обеспечения на примере мобильных приложений»

Содержание:

ВВЕДЕНИЕ

В современном мире большинство людей не мыслят себя без интернета и мобильных технологий. На сегодняшний день более 56млн. россиян пользуются мобильным интернетом[1] и это число продолжает расти. В связи с этим с каждым днем популярность мобильных приложений повышается, и их количество неуклонно растет. С количеством растет и конкуренция, а конкуренция предъявляет все больше требований к качеству продукта. Поэтому сфера тестирования мобильных приложений приобретает всё большее влияние и значимость.

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

ГЛАВА 1 ЖИЗНЕННЫЙ ЦИКЛ ТЕСТИРОВАНИЯ

Согласно определению Алексея Баранцева[2] тестирование — это проверка соответствия программы требованиям, осуществляемая путем наблюдения за ее работой в специальных, искусственно созданных ситуациях, выбранных определенным образом.

Сам процесс тестирования должен начинаться с подготовки к тестированию, а именно:

  1. Подготовка и согласование плана тестирования -

Тест план (Test Plan) - это документ описывающий весь объем работ по тестированию, начиная с описания объекта, стратегии, расписания, критериев начала и окончания тестирования, до необходимого в процессе работы оборудования, специальных знаний, а также оценки рисков с вариантами их разрешения[3].

  1. Аудит заявленных к системе функциональных требований на соблюдение следующих критериев[4]:
  • Полнота
  • Корректность
  • Осуществимость
  • Необходимость
  • Назначение приоритетов
  • Недвусмысленность
  • Проверяемость
  • Согласованность
  • Отслеживаемость
  1. Подготовка тест-кейсов

Тест-кейс, тестовый случай, тестовая ситуация (test case) — набор входных данных, условий выполнения и ожидаемых результатов, разработанный с целью проверки того или иного свойства или поведения программного средства[5].

Затем происходит выполнение тестирования, оно содержит следующие этапы[6]:

  1. Выполнение тест-кейсов и фиксация найденных дефектов

Все выявленные в рамках выполнения тест-кейсов дефекты должны быть зафиксированы в системе баг-трекинга, либо в согласованном в тест-плане виде.

Запись о дефекте должна содержать следующие данные[7]:

  • Краткое название дефекта - должно отвечать на вопросы «Где? Что? Когда?».
  • Серьезность/Критичность - насколько сильно дефект влияет на использование функции ПО.
  • Версия ПО – Версия, на которой проявляется дефект.
  • Шаги воспроизведения – последовательность действий, которая приводит к проявлению дефекта.
  • Результат – фактический результат, который происходит при выполнении шагов воспроизведения.
  • Ожидаемый результат – результат, который, согласно требованиям, мы ожидаем.
  • Приложения – различные снимки экрана и логи приложения, помогающие описать и локализировать проблему.
  1. Анализ результатов тестирования и отчетность

Отчет по тестированию должен содержать следующие данные[8]:

  • Состав команды;
  • Сроки выполнения, за которые составляется отчет;
  • Описание процессов тестирования;
  • Изменения тестовой модели, дополнение ТК;
  • Процент пройденных ТК;
  • Критичные и блокирующие проблемы и принятые меры по их устранению.

ГЛАВА 2 ОСОБЕННОСТИ ТЕСТИРОВАНИЯ МОБИЛЬНЫХ ПРИЛОЖЕНИЙ

Тестирование мобильных приложений имеет очень больше количество подводных камней и дополнительных проверок относительно десктоп и веб приложений, вот список различий и проверок с разбивкой на разделы[9]:

  1. Размер экрана и touch-интерфейс:
  • Проверка размеров элементов – элементы должны быть достаточного размера, чтобы пользователь мог однозначно попасть по ним.
  • Отсутствие пустых экранов в приложении – пользователь не должен оказываться в ситуации, в которой не очевидно, что сейчас происходит и что делать.
  • Проверка многократных нажатий на кнопку – часто, при повторном действии в момент выполнения действия, может случиться падение приложения.
  • Проверка мультитача – необходимо проверять поведение приложения при нажатии на несколько элементов одновременно.
  • Проверка наличия или отсутствия «нативных» жестов (pinch-to-zoom, doubletap) – если, например, поддерживается зум части приложения, то должен использоваться жест по умолчанию. А если нет необходимости выделять картинку, то по даблтапу она не должна выделяться.
  1. Ресурсы устройства:
  • Проверка потребления памяти – стоит проверять на экранах, с большим количеством информации, во время задач с длительным workflow (когда пользователь долго не выходит из приложения) при некорректно работающем кэшировании изображений.
  • Проверка ситуаций нехватки памяти для функционирования ОС, когда приложение активно или работает в фоне.
  • Проверка обработки отсутствия в некоторых устройствах поддерживаемых приложением функций (3G, SD-карта и т. п.).
  • Проверка установки или переноса приложения на карту SD.
  1. Различные разрешения экрана и версии ОС:
  • Проверка для Ретина-экранов и обычных экранов. На ретина-экранах элементы интерфейса и текст отображаются мельче. Картинки для ретина-экрана могут попасть в не-ретина версию и тогда будут слишком большими.
  • Проверка адаптации приложения к портретной и альбомной ориентациям устройства.
  • Версии ОС. Приложение не должно устанавливаться на неподдерживаемые устройства. Обязательна проверка на всех доступных из поддерживаемых девайсов.
  • Поддержка необходимых медиа-файлов данной моделью и ОС, потому что отдельные разработчики могут урезать поддержку работы с некоторыми форматами.
  • Соответствие используемых в приложении view их смысловому назначению и концепциям платформы. Проектные решения, которые имеют смысл для одной платформы, могут выглядеть и быть неуместными в контексте другой платформы.
  1. Реакция приложения на внешние прерывания
  • Входящие и исходящие SMS, MMS, звонки, оповещения других приложений.
  • Выключение устройства, изъятие аккумулятора, разрядка устройства.
  • Переход в режим ожидания (в том числе и с защитой паролем). Смена ориентации устройства в режиме ожидания.
  • Отключение и подключение провода.
  • Отключение и включение сети, Bluetooth, авиарежима, GPS.
  • Потеря связи с сервером или прокси (подключение есть, но пакеты не доходят).
  • Отключение и подключение SD-карты, дополнительных устройств вроде физической клавиатуры или гарнитуры.
  • Зарядка устройства.
  • Работа с акселерометром.
  • Работа с физической клавиатурой (если в списке поддерживаемых моделей есть такие).
  1. Платный контент внутри приложения:
  • Соответствие цены и содержимого, заявленного в приложении, тому, что попадает к пользователю.
  • Восстановление покупки (обновление приложения).
  1. Интернационализация (проверять и в портретном, и в ландшафтном режиме!):
  • Проверка корректности перевода.
  • Проверка того, что все надписи входят в соответствующие формы, кнопки и т.п.
  • Проверка форматов дат, разделителей в числах, специфических особенностей локализации (вроде пробела перед знаком вопроса во французской, верхних индексов “o” и “a” в порядковых числительных в испанской и других нетривиальных моментов).
  1. Постоянная обратная связь с пользователем:
  • У всех нажимаемых элементов должно быть нажатое состояние (отклик на действие) – благодаря этому пользователь всегда будет видеть, действительно ли нажатие случилось. В Android-приложениях у элементов может быть ещё одно состояние – focused.
  • Реакция кнопок на нажатие. Скорость отклика элементов должна быть достаточно высокой. Желательно использовать для проверки этого пункта самые слабые устройства среди поддерживаемых.
  • Сообщения при загрузке контента или прогресс-бар.
  • Сообщения при ошибке доступа к сети, BT, GPS.
  • Наличие понятных сообщений при попытке удалить важную информацию.
  • Наличие экрана или сообщения при окончании процесса или игры.
  • Наличие и синхронность звуков или вибрации с уведомлениями и другими событиями на экране.
  1. Обновления:
  • Убедиться, что поддерживаются те же версии ОС, что и предыдущая версия (если новая версия приложения использует новые возможности ОС, то для старых поддерживаемых версий ОС необходимо создание урезанной версии приложения).
  • Проверка адекватного обновления (сохраняются все данные пользователя и т. п.).
  1. Root-права
  • Проверить, что функционал приложения работает одинаково для устройств с полученными root-правами и без них.

Глава 3. Тестирование приложения на примере Veros Wallet.

Для применения полученной теории было выбрано приложение из GooglePlay для последующего тестирования. Я ориентировался на не слишком популярные приложения с оценкой около 4 звезд.

Результатом поиска стал VEROS Wallet со следующими показателями:

Количество установок

500–1 000

Оценка

4.0

Текущая версия

1.3

Так как у меня не было функциональных и бизнес требований к приложению, я решил найти их сам, ориентируясь на функционал.

В рамках анализа приложения мной были выделены следующие функциональные требования:

1). Создание кошелька

  • Ввод имени кошелька
  • Ввод пароля
  • Ввод повтора пароля
  • Ввод email-адреса
  • Выбор типа секретного вопроса
  • Ввод ответа на секретный вопрос
  • Кнопка создания кошелька

2). Импорт кошелька через хэшированную строку

  • Проверка пароля при импорте

3). Импорт кошелька через сканирование QR кода

  • Проверка пароля при импорте

4). Отображение кошелька в приложении

  • Отображение названия кошелька
  • Отображение адреса кошелька
  • Отображение баланса кошелька

5). Взаимодействие с кошельком

5.1). Перевод с кошелька (Send Veros)

  • Отправка через QR код
  • Отправка через адрес кошелька

5.2). Получение валюты (Receive Veros)

  • Генерация QR кода

5.3.). История операций (Transaction)

  • Пополнение
  • Списание

5.4). Дополнительно

  • Поделиться адресом кошелька через другое приложение
  • Экспорт кошелька
  • Удаление кошелька

6). Обновление состояния кошельков

7). Общий баланс кошельков

8). Восстановление кошелька

Список проверок:

1). Проверка сохранения валидных данных в имя кошелька.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать кнопку плюса для добавления нового кошелька.

Отобразился поп-ап предлагающий создать новый кошелек или импортировать существующий.

3

Выбрать создание нового кошелька.

Появилась форма создания нового кошелька.

4

Заполнить все поля валидными значениями и нажать кнопку сохранения.

Кошелек успешно сохранен.

5

Проверить, что для созданного кошелька сохранено указанное имя.

Для созданного кошелька сохранено указанное имя.

2). Проверка сохранения спецсимволов и кириллицы в имя кошелька.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать кнопку плюса для добавления нового кошелька.

Отобразился поп-ап предлагающий создать новый кошелек или импортировать существующий.

3

Выбрать создание нового кошелька.

Появилась форма создания нового кошелька.

4

Заполнить поле «Name» спец.символами и символами кириллицы. Нажать кнопку сохранить.

Кошелек не сохранен. Появилось уведомление о недопустимости использования веденных символов.

3). Проверка сохранения пустого поля имени кошелька.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать кнопку плюса для добавления нового кошелька.

Отобразился поп-ап предлагающий создать новый кошелек или импортировать существующий.

3

Выбрать создание нового кошелька.

Появилась форма создания нового кошелька.

4

Оставить поле «Name» пустым, все остальные поля заполнить валидными значениями. Нажать кнопку сохранить.

Кошелек не сохранен. Появилось уведомление о необходимости заполнить поле «Name»

4). Проверка сохранения минимального кол-ва символов для названия кошелька.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать кнопку плюса для добавления нового кошелька.

Отобразился поп-ап предлагающий создать новый кошелек или импортировать существующий.

3

Выбрать создание нового кошелька.

Появилась форма создания нового кошелька.

4

Заполнить поле «Name» одним символом, все остальные поля заполнить валидными значениями. Нажать кнопку сохранить.

Кошелек успешно сохранен.

5). Проверка сохранения валидных данных в пароль и повтор пароля.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать кнопку плюса для добавления нового кошелька.

Отобразился поп-ап предлагающий создать новый кошелек или импортировать существующий.

3

Выбрать создание нового кошелька.

Появилась форма создания нового кошелька.

4

Заполнить все поля валидными значениями

Кошелек успешно сохранен.

5

Выполнить любую операцию требующую проверку пароля по кошельку, ввести пароль, указанный при создании.

Пароль успешно проверен, операция выполнена.

6). Проверка сохранения разных значений для пароля и повтора пароля.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать кнопку плюса для добавления нового кошелька.

Отобразился поп-ап предлагающий создать новый кошелек или импортировать существующий.

3

Выбрать создание нового кошелька.

Появилась форма создания нового кошелька.

4

Заполнить поле «Password» значением N1, поле «Confirm password» значением N2, все остальные поля заполнить валидными значениями. Нажать кнопку сохранить.

Кошелек не сохранен. Появилось уведомление о том, что пароли не совпадают.

7). Проверка сохранения спецсимволов и кириллицы в пароль и повтор пароля.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать кнопку плюса для добавления нового кошелька.

Отобразился поп-ап предлагающий создать новый кошелек или импортировать существующий.

3

Выбрать создание нового кошелька.

Появилась форма создания нового кошелька.

4

Заполнить поля «Password» и «Confirm password» значением, состоящим из спецсимволов и кириллицы, все остальные поля заполнить валидными значениями. Нажать кнопку сохранить.

Кошелек успешно сохранен.

8). Проверка сохранения пустых значений для пароля и повтора пароля.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать кнопку плюса для добавления нового кошелька.

Отобразился поп-ап предлагающий создать новый кошелек или импортировать существующий.

3

Выбрать создание нового кошелька.

Появилась форма создания нового кошелька.

4

Поля «Password» и «Confirm password» оставить пустыми, все остальные поля заполнить валидными значениями. Нажать кнопку сохранить.

Кошелек не сохранен. Появилось уведомление о том, что поля «Password» и «Confirm password» обязательны для заполнения

9). Проверка минимального кол-ва символов для названия кошелька.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать кнопку плюса для добавления нового кошелька.

Отобразился поп-ап предлагающий создать новый кошелек или импортировать существующий.

3

Выбрать создание нового кошелька.

Появилась форма создания нового кошелька.

4

Поля «Password» и «Confirm password» заполнить одним символом, все остальные поля заполнить валидными значениями. Нажать кнопку сохранить.

Кошелек не сохранен. Появилось уведомление о том, что пароль слишком слабый.

10). Проверка ввода совпадающих значений для имени кошелька и паролей.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать кнопку плюса для добавления нового кошелька.

Отобразился поп-ап предлагающий создать новый кошелек или импортировать существующий.

3

Выбрать создание нового кошелька.

Появилась форма создания нового кошелька.

4

Поля «Name», «Password» «Confirm password» заполнить одинаковыми значениями, все остальные поля заполнить валидными значениями. Нажать кнопку сохранить.

Кошелек не сохранен. Появилось уведомление о том, что Название кошелька и пароль совпадают.

11). Проверка сохранения валидных данных в email.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать кнопку плюса для добавления нового кошелька.

Отобразился поп-ап предлагающий создать новый кошелек или импортировать существующий.

3

Выбрать создание нового кошелька.

Появилась форма создания нового кошелька.

4

Заполнить поле «email» адресом реального кошелька, остальные поля заполнить валидными данными и нажать сохранить.

Кошелек успешно сохранен.

5

Выполнить операцию восстановления пароля для кошелька и проверить почту, указанную в предыдущем шаге.

Пароль отправлен на корректный ящик.

12). Проверка сохранения символов недопустимых для email-адреса.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать кнопку плюса для добавления нового кошелька.

Отобразился поп-ап предлагающий создать новый кошелек или импортировать существующий.

3

Выбрать создание нового кошелька.

Появилась форма создания нового кошелька.

4

Поле «email» заполнить символами, которые, согласно RFC[10], запрещены в email. (лидирующий и замыкающий пробелы, несколько символов @, двойные точки в ящике и домене)

Кошелек не сохранен. Появилось уведомление о том, в адресе почты использованы некорректные символы.

13). Проверка сохранения типа секретного вопроса из списка.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать кнопку плюса для добавления нового кошелька.

Отобразился поп-ап предлагающий создать новый кошелек или импортировать существующий.

3

Выбрать создание нового кошелька.

Появилась форма создания нового кошелька.

4

Заполнить все поля валидными значениями. В списке «Secret Question» выбрать любой из вариантов и запомнить его.

Кошелек успешно сохранен.

5

Выбрать операцию восстановления пароля для кошелька и проверить, какой секретный вопрос запрашивается.

Запрашивается секретный вопрос, выбранный в предыдущем шаге.

14). Проверка сохранения без выбранного секретного вопроса.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать кнопку плюса для добавления нового кошелька.

Отобразился поп-ап предлагающий создать новый кошелек или импортировать существующий.

3

Выбрать создание нового кошелька.

Появилась форма создания нового кошелька.

4

Заполнить все поля валидными значениями. В списке «Secret Question» не выбирать никакого вопроса.

Кошелек не сохранен. Появилось уведомление о необходимости выбрать секретный вопрос.

15). Проверка сохранения валидного значения для ответа на секретный вопрос.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать кнопку плюса для добавления нового кошелька.

Отобразился поп-ап предлагающий создать новый кошелек или импортировать существующий.

3

Выбрать создание нового кошелька.

Появилась форма создания нового кошелька.

4

Заполнить все поля валидными значениями. В поле «Secret Answer» ввести корректное значение.

Кошелек успешно сохранен.

5

Выбрать операцию восстановления пароля для кошелька и использовать секретный ответ.

Секретный ответ подходит.

16). Проверка сохранения пустого значения для ответа на секретный вопрос.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать кнопку плюса для добавления нового кошелька.

Отобразился поп-ап предлагающий создать новый кошелек или импортировать существующий.

3

Выбрать создание нового кошелька.

Появилась форма создания нового кошелька.

4

Заполнить все поля валидными значениями. Поле «Secret Answer» оставить пустым.

Кошелек не сохранен, появилось уведомление о необходимости заполнить секретный ответ.

17). Проверка сохранения ответа на секретный вопрос состоящего из спецсимволов и кириллицы.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать кнопку плюса для добавления нового кошелька.

Отобразился поп-ап предлагающий создать новый кошелек или импортировать существующий.

3

Выбрать создание нового кошелька.

Появилась форма создания нового кошелька.

4

Заполнить все поля валидными значениями. Поле «Secret Answer» заполнить спец. символами и кириллицей.

Кошелек не сохранен, появилось уведомление о недопустимых символах в поле «Secret answer».

18). Проверка импорта валидной строки кошелька, правильно указан пароль.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать кнопку плюса для добавления нового кошелька.

Отобразился поп-ап предлагающий создать новый кошелек или импортировать существующий.

3

Выбрать импорт кошелька.

Появилась форма импорта кошелька.

4

Ввести корректную строку кошелька и корректный пароль.

Кошелек успешно сохранен.

19). Проверка импорта валидной строки кошелька, неправильно указан пароль.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать кнопку плюса для добавления нового кошелька.

Отобразился поп-ап предлагающий создать новый кошелек или импортировать существующий.

3

Выбрать импорт кошелька.

Появилась форма импорта кошелька.

4

Ввести корректную строку кошелька и неправильный пароль.

Кошелек не сохранен. Появилась ошибка о необходимости ввести правильный пароль.

20). Проверка импорта не валидной строки кошелька.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать кнопку плюса для добавления нового кошелька.

Отобразился поп-ап предлагающий создать новый кошелек или импортировать существующий.

3

Выбрать импорт кошелька.

Появилась форма импорта кошелька.

4

Ввести некорректную строку кошелька и пароль.

Кошелек не сохранен. Появилось сообщение о том, что строка не валидна.

21). Проверка импорта кошелька через QR код, правильно указан пароль.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать кнопку плюса для добавления нового кошелька.

Отобразился поп-ап предлагающий создать новый кошелек или импортировать существующий.

3

Выбрать импорт кошелька.

Появилась форма импорта кошелька.

4

Используя Scan QR Code указать строку кошелька и ввести корректный пароль.

Кошелек успешно сохранен.

22). Проверка импорта кошелька через QR код, неправильно указан пароль.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать кнопку плюса для добавления нового кошелька.

Отобразился поп-ап предлагающий создать новый кошелек или импортировать существующий.

3

Выбрать импорт кошелька.

Появилась форма импорта кошелька.

4

Используя Scan QR Code указать строку кошелька и ввести неправильный пароль.

Кошелек не сохранен. Появилась ошибка о необходимости ввести правильный пароль.

23). Проверка импорта кошелька через QR код, некорректный QR код.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать кнопку плюса для добавления нового кошелька.

Отобразился поп-ап предлагающий создать новый кошелек или импортировать существующий.

3

Выбрать импорт кошелька.

Появилась форма импорта кошелька.

4

Используя Scan QR Code указать некорректную строку кошелька и ввести пароль.

Кошелек не сохранен. Появилась ошибка о необходимости ввести правильный пароль.

24). Проверка импорта кошелька через QR код, на устройстве нет камеры.

Предусловие: на устройстве нет камеры.

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать кнопку плюса для добавления нового кошелька.

Отобразился поп-ап предлагающий создать новый кошелек или импортировать существующий.

3

Выбрать импорт кошелька.

Появилась форма импорта кошелька.

4

Использовать Scan QR Code

Появилось сообщение, что на устройстве недоступна камера.

25). Проверка наличия кошелька после создания.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать кнопку плюса для добавления нового кошелька.

Отобразился поп-ап предлагающий создать новый кошелек или импортировать существующий.

3

Выбрать создание нового кошелька.

Появилась форма создания нового кошелька.

4

Заполнить все поля валидными значениями и нажать кнопку сохранения.

Кошелек успешно сохранен.

5

Проверить, что на главном экране появился новый кошелек.

Для созданного кошелька сохранено указанное имя.

26). Проверка отсутствия кошелька после удаления.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Для любого кошелька нажать кнопку «more» и затем «delete».

Появилось окно удаление кошелька.

3

Ввести корректный пароль для кошелька и нажать «Confirm».

Кошелек удален и больше не виден на главной странице приложения.

27). Проверка отображения названия кошелька.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Проверить, что для каждого кошелька на главной странице указано его имя.

Для каждого кошелька на главной странице указано его имя.

28). Проверка отображения адреса кошелька.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Проверить, что для каждого кошелька на главной странице указан его адрес.

Для каждого кошелька на главной странице указан его адрес.

29). Проверка отображения баланса кошелька.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Проверить, что для каждого кошелька на главной странице указан его баланс.

Для каждого кошелька на главной странице указан его баланс.

30). Проверка отправки через QR код. Успешная отправка.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать пункт «Send Veros» для кошелька с положительным балансом.

Отобразилась форма для выполнения перевода.

3

Нажать пункт «Scan QR Code» и с помощью камеры выделить QR код.

Определился адрес кошелька и сумма для перевода.

4

Подтвердить перевод.

Перевод выполнен.

31). Проверка отправки через QR код. QR код не валиден.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать пункт «Send Veros» для кошелька с положительным балансом.

Отобразилась форма для выполнения перевода.

3

Нажать пункт «Scan QR Code» и с помощью камеры выделить некорректный QR код.

Кошелек и сумма перевода не определены.

32). Проверка отправки через QR код. Недостаточно средств на кошельке.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать пункт «Send Veros» для кошелька с нулевым балансом.

Отобразилась форма для выполнения перевода.

3

Нажать пункт «Scan QR Code» и с помощью камеры выделить корректный QR код.

Кошелек и сумма перевода определены.

4

Нажать кнопку отправки средств.

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

33). Проверка отправки через QR код. На устройстве нет камеры.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать пункт «Send Veros» для кошелька с положительным балансом.

Отобразилась форма для выполнения перевода.

3

Нажать пункт «Scan QR Code» и с помощью камеры выделить корректный QR код.

Операция не выполнена. Появилось сообщение о недоступности камеры.

34). Проверка отправки по адресу кошелька. Успешная проверка.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать пункт «Send Veros» для кошелька с положительным балансом.

Отобразилась форма для выполнения перевода.

4

Указать корректный адрес кошелька и сумму. Нажать кнопку отправки.

Отправка выполнена. На кошелек получателя зачислены средства.

35). Проверка отправки по адресу кошелька. Адрес кошелька не валиден.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать пункт «Send Veros» для кошелька с положительным балансом.

Отобразилась форма для выполнения перевода.

3

Указать не корректный адрес кошелька и сумму. Нажать кнопку отправки.

Перевод не выполнен. Появилось уведомление о некорректном адресе получателя.

36). Проверка отправки по адресу кошелька. Недостаточно средств на кошельке.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения

2

Нажать пункт «Send Veros» для кошелька с нулевым балансом.

Отобразилась форма для выполнения перевода.

3

Указать корректный адрес получателя и сумму. Нажать кнопку отправки.

Операция не выполнена. Появилось уведомление о недостаточном кол-ве средств для проведения операции.

37). Проверка отправки по адресу кошелька. Транзакция с нулевой суммой.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать пункт «Send Veros» для кошелька с положительным балансом.

Отобразилась форма для выполнения перевода.

3

Указать корректный адрес кошелька и нулевую сумму. Нажать кнопку отправки.

Перевод не выполнен. Появилось уведомление о необходимости указать сумму перевода.

38). Проверка списания комиссии за операцию.

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать пункт «Send Veros» для кошелька с положительным балансом.

Отобразилась форма для выполнения перевода.

3

Указать корректный адрес кошелька и сумму. Нажать кнопку отправки.

Отправка выполнена. С кошелька отправителя списана сумма перевода + комиссия.

39). Проверка генерации QR кода с адресом кошелька и суммой.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Выбрать пункт «Receive Veros»

Отобразилась форма для ввода

3

Указать любую сумму и скопировать QR код.

QR код скопирован.

4

На главном окне нажать пункт «Send Veros» и указать QR код из предыдущего шага.

Код распознан, указан корректный кошелек и сумма.

40). Проверка отображения списаний в истории операций по кошельку.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Выбрать пункт «Transaction» для кошелька, по которому были списания.

Отобразился список операций по кошельку, все списания отображены корректно.

41). Проверка отображения пополнений в истории операций по кошельку.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Выбрать пункт «Transaction» для кошелька, по которому были пополнения.

Отобразился список операций по кошельку, все пополнения отображены корректно.

42). Проверка шаринга адреса кошелька через другие приложения.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Выбрать для любого кошелька кнопку «More»

Появилось окно с опциями:

Share my wallet address,

Export wallet,

Delete

3

Нажать кнопку «Share my wallet address»

Появился перечень приложений, в которые можно отправить адрес кошелька.

4

Выбрать любой из пунктов и проверить, что в поле ввода указан адрес кошелька, для которого использовался шаринг.

В поле ввода указан адрес кошелька, для которого использовался шаринг.

43). Проверка экспорта кошелька. Правильный пароль.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Выбрать для любого кошелька кнопку «More»

Появилось окно с опциями:

Share my wallet address,

Export wallet,

Delete

3

Нажать кнопку «Export wallet»

Появилось окно с запросом пароля для кошелька.

4

Ввести корректный пароль для кошелька.

Пароль прошел проверку и приложение сгенерировало строку с кошельком.

44). Проверка экспорта кошелька. Неправильный пароль.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Выбрать для любого кошелька кнопку «More»

Появилось окно с опциями:

Share my wallet address,

Export wallet,

Delete

3

Нажать кнопку «Export wallet»

Появилось окно с запросом пароля для кошелька.

4

Ввести не корректный пароль для кошелька.

Пароль не прошел проверку. Появилось уведомление о необходимости ввести правильный пароль.

45). Проверка удаления кошелька. Правильный пароль.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Выбрать для любого кошелька кнопку «More»

Появилось окно с опциями:

Share my wallet address,

Export wallet,

Delete

3

Нажать кнопку «Delete»

Появилось окно с запросом пароля для кошелька.

4

Ввести корректный пароль для кошелька.

Кошелек успешно удален.

46). Проверка удаления кошелька. Неправильный пароль.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Выбрать для любого кошелька кнопку «More»

Появилось окно с опциями:

Share my wallet address,

Export wallet,

Delete

3

Нажать кнопку «Delete»

Появилось окно с запросом пароля для кошелька.

4

Ввести не корректный пароль для кошелька.

Кошелек не удален. Появилось уведомление о необходимости ввести правильный пароль.

47). Проверка восстановления пароля. Правильный ответ на секретный вопрос.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Выбрать для любого кошелька кнопку «More»

Появилось окно с опциями:

Share my wallet address,

Export wallet,

Delete

3

Нажать любую кнопку и выбрать «Forgot your password»

Появилось окно восстановления пароля.

4

Ввести корректный email и правильный ответ на секретный вопрос.

Пароль успешно восстановлен. На указанную почту пришла информация о сбросе пароля.

48). Проверка восстановления пароля. Неправильный ответ на секретный вопрос.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Выбрать для любого кошелька кнопку «More»

Появилось окно с опциями:

Share my wallet address,

Export wallet,

Delete

3

Нажать любую кнопку и выбрать «Forgot your password»

Появилось окно восстановления пароля.

4

Ввести корректный email и не правильный ответ на секретный вопрос.

Пароль не восстановлен. Появилось уведомление о необходимости указать правильный ответ на секретный вопрос.

49). Проверка обновления состояния кошельков.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Из внешней системы изменить баланс любого кошелька и нажать кнопку обновления в левом-верхнем углу.

Список кошельков обновлен. По кошельку, для которого менялся баланс корректно указано новое значение.

50). Проверка корректности общего баланса кошельков.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Проверить что значение «My balance» в верхней части экрана равно сумме балансов всех кошельков.

«My balance» равен сумме балансов всех кошельков.

51). Проверка множественных нажатий.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Нажать одновременно на несколько элементов.

Открылся один из нажатых элементов. Приложение продолжает работать в штатном режиме.

52). Проверка работы на 3G интернете.

Предусловие: устройство подключено к сети 3G

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Проверить, что приложение корректно обновляет состояние кошельков и позволяет выполнять операции.

Приложение корректно обновляет состояние кошельков и позволяет выполнять операции.

53). Проверка работы на WIFI.

Предусловие: устройство подключено к сети WIFI

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Проверить, что приложение корректно обновляет состояние кошельков и позволяет выполнять операции.

Приложение корректно обновляет состояние кошельков и позволяет выполнять операции.

54). Проверка работы без подключения к сети.

Предусловие: у устройства нет подключения к интернету.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Вход в приложение не выполнен. Появилось уведомление о недоступности сети.

55). Проверка переноса приложения на SD карту.

Шаг

Действие

Ожидаемый результат

1

Выполнить перенос приложения Veros Wallet на SD карту.

Приложение перенесено.

2

Проверить, что приложение корректно обновляет состояние кошельков и позволяет выполнять операции.

Приложение корректно обновляет состояние кошельков и позволяет выполнять операции.

56). Проверка поведения приложения при перезагрузке устройства.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Выполнить перезагрузку устройства.

Устройство перезагружено.

3

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

4

Проверить, что в результате перезагрузки не потеряна такая информация, состояние кошельков, транзакции по кошелькам, балансы.

В результате перезагрузки данные не потеряны.

57). Проверка поведения приложения после входа и выхода из режима ожидания.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Открыть любое окно приложения.

Окно открыто.

3

Перевести устройство в режим ожидания.

Устройство переведено в режим ожидания.

4

Вывести устройство из режима ожидания и проверить, что состояние окна осталось аналогичным состоянию до перевода в режим ожидания.

Состояние окна не изменилось.

58). Проверка поведения приложения при получении устройством SMS/MMS.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Открыть любое окно приложения.

Окно открыто.

3

Отправить на устройство, на котором производится тестирование, смс\ммс.

Смс\ммс отправлено

4

Проверить, что работоспособность приложения не изменилась.

Работоспособность приложения не изменилась.

59). Проверка поведения приложения при прерывании работы входящим звонком.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Открыть любое окно приложения.

Окно открыто.

3

Выполнить на устройство, на котором производится тестирование звонок.

Звонок выполнен.

4

Завершить звонок и проверить, что работоспособность приложения не изменилась.

Работоспособность приложения не изменилась.

60). Проверка поведения приложения при подключении и отключении питания.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Подключить устройство к источнику питания.

Устройство подключено.

3

Проверить, что работоспособность приложения не изменилась.

Работоспособность приложения не изменилась.

4

Отключить устройство от источника питания.

Устройство отключено от источника питания.

5

Проверить, что работоспособность приложения не изменилась.

Работоспособность приложения не изменилась.

61). Проверка поведения приложения при потере сигнала сети.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Инициировать потерю сигнала устройством.

Устройство потеряло подключение к интернету.

3

Выполнить любую операцию.

Операция не выполнена. Появилось уведомление о недоступности сети.

62). Проверка извлечения SD карты. Приложение установлено на телефон.

Предусловие: Приложение установлено на SD карту.

Шаг

Действие

Ожидаемый результат

1

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

2

Вытащить SD карту из устройства.

SD карта удалена.

3

Проверить, что работоспособность приложения не изменилась.

Работоспособность приложения не изменилась.

63). Проверка обновления приложения.

Предусловие: для приложения доступно обновление.

Шаг

Действие

Ожидаемый результат

1

Выполнить обновление приложения.

Приложение успешно обновлено.

2

Войти в приложение VerosWallet.

Отобразилось главное окно приложения.

Найденные в рамках тестирования дефекты:

Название

Создание нового кошелька. Не указаны явные требования к паролю.

Критичность

Условно-критичный

Версия ПО

1.3

Шаги воспроизведения

1). Войти в приложение.

2). Открыть окно создания нового кошелька.

3). Указать в качестве пароля и повтора пароля один символ, остальные поля заполнить корректно.

4). Нажать кнопку «Создать»

Фактический результат

Кошелек не создан, появилось уведомление «Password too short»

Ожидаемый результат

Кошелек не создан, появилось уведомление «Password must be at least 8 characters long»

Название

Создание нового кошелька. Система позволяет сделать имя кошелька и пароль к нему одинаковыми.

Критичность

Критичный

Версия ПО

1.3

Шаги воспроизведения

1). Войти в приложение.

2). Открыть окно создания нового кошелька.

3). Указать в качестве имени кошелька, пароля и повтора пароля одинаковый набор символов, остальные поля заполнить корректно.

4). Нажать кнопку «Создать»

Фактический результат

Кошелек создан.

Ожидаемый результат

Кошелек не создан, появилось уведомление «Name and password must not be the same»

Название

Создание нового кошелька. Некорректный текст ошибки при использовании кириллицы в пароле.

Критичность

Средний

Версия ПО

1.3

Шаги воспроизведения

1). Войти в приложение.

2). Открыть окно создания нового кошелька.

3). Указать в качестве пароля и повтора пароля строку из символов на кириллице, остальные поля заполнить корректно.

4). Нажать кнопку «Создать»

Фактический результат

Кошелек не создан, появилось уведомление «These passwords don’t match. Try again».

Ожидаемый результат

Кошелек не создан, появилось уведомление «Invalid characters are used in the password field»

Название

Создание нового кошелька. Таймаут при регистрации с кириллицей в секретном вопросе.

Критичность

Средний

Версия ПО

1.3

Шаги воспроизведения

1). Войти в приложение.

2). Открыть окно создания нового кошелька.

3). Указать в качестве ответа на секретный вопрос строку из символов на кириллице, остальные поля заполнить корректно.

4). Нажать кнопку «Создать»

Фактический результат

Кошелек не создан, вместо уведомления получаем длительный таймаут.

Ожидаемый результат

Кошелек не создан, появилось уведомление «Invalid characters are used in the secret answer field».

Название

Создание нового кошелька. Система позволяет создать кошелек с именем, которое уже используется у данного пользователя.

Критичность

Условно-критичный

Версия ПО

1.3

Шаги воспроизведения

Предусловие: в приложении уже есть кошелек с название «1»

1). Войти в приложение.

2). Открыть окно создания нового кошелька.

3). Указать в качестве имени кошелька значение «1», остальные поля заполнить корректно.

4). Нажать кнопку «Создать»

Фактический результат

Кошелек создан.

Ожидаемый результат

Кошелек не создан, появляется уведомление «This name is already in use».

Название

Создание нового кошелька. Выбор секретного вопроса не является обязательным.

Критичность

Средний

Версия ПО

1.3

Шаги воспроизведения

1). Войти в приложение.

2). Открыть окно создания нового кошелька.

3). Не выбирать значение из списка для секретного вопроса, остальные поля заполнить корректно.

4). Нажать кнопку «Создать»

Фактический результат

Кошелек создан.

Ожидаемый результат

Кошелек не создан, появилось уведомление «You must choose the type of secret question»

Название

Восстановление пароля. Краш приложения при восстановлении пароля к кошельку.

Критичность

Условно-критичный

Версия ПО

1.3

Шаги воспроизведения

1). Войти в приложение.

2). Для любого кошелька нажать «More».

3). Выбрать пункт «Delete».

4). Нажать на ссылку «Forgot your password».

5). Указать правильный ответ на секретный вопрос и почту.

6). Нажать кнопку «Recover Password».

Фактический результат

Приложение аварийно закрывается. На почтовый адрес пришла инструкция по смене пароля.

Ожидаемый результат

Появляется уведомление об успешной отправке инструкции по смене пароля. На почтовый адрес пришла инструкция по смене пароля.

Название

Отправка Veros. Система позволяет произвести перевод на нулевую сумму

Критичность

Критичный

Версия ПО

1.3

Шаги воспроизведения

1). Войти в приложение.

2). По любому кошельку нажать «Send Veros».

3). Указать адрес кошелька-получателя, сумму равной нулю.

4). Нажать кнопку «Send Veros»

Фактический результат

Операция выполнена.

Ожидаемый результат

Операция не выполнена. Появилось уведомление о необходимости указать сумму отличную от нуля.

Название

Отправка Veros. Система позволяет произвести перевод на сумму, большую, чем баланс на кошельке

Критичность

Критичный

Версия ПО

1.3

Шаги воспроизведения

Предусловие: на кошельке используемом для тестирования есть средства, но их недостаточно для проведения операции.

1). Войти в приложение.

2). По кошельку из предусловия нажать «Send Veros».

3). Указать адрес кошелька-получателя, сумму большую, чем баланс кошелька.

4). Нажать кнопку «Send Veros»

Фактический результат

Операция не выполнена. Появилось уведомление, что операция выполнена успешно.

Ожидаемый результат

Операция не выполнена. Появилось уведомление о недостаточном кол-ве средств на кошельке.

ЗАКЛЮЧЕНИЕ

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

Во время тестирования приложения Veros Wallet я был вынужден пропустить часть проверок, таких как проверка на различных версиях операционной системы и проверка на различных размерах экрана.

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

Проведение тестирования обязательно для получения качественного продукта, но не может гарантировать отсутствие ошибок, так как, зачастую, процесс тестирования всегда ограничен в ресурсах и времени.

БИБЛИОГРАФИЯ

1). Баранцев А. Основные положения тестирования [Электронный ресурс] // QA — грамотно. 2010. 9 марта. URL: https://testitquickly.com/2010/03/09/testing-basics-by-barancev/ (дата обращения 16.06.2017).

2). Булат А. План Тестирования [Электронный ресурс] // Про тестинг. 2008. 12 июня. URL: http://alexeybulat.blogspot.ru/2008/06/test-plan.html (дата обращения: 15.06.2017).

3). Вигерс К., Битти Д. [Wiegers K., Beatty J.] Разработка требований к программному обеспечению. 3-е изд., дополненное / Пер. с англ. — М. : Издательство «Русская редакция» ; СПб. : БХВ-Петербург, 2014.

4). Куликов С.С. Тестирование программного обеспечения. Базовый курс : практ. пособие. — Минск: Четыре четверти, 2015. 

5). Ефремова Д. Создание понятных отчетов о тестировании [Электронный ресурс] // Хабрахабр 2013. 30 декабря. URL: https://habrahabr.ru/company/performance_lab/blog/207512/ (дата обращения: 25.07.2017).

6). Исследование GfK: Тенденции развития Интернет-аудитории в России [Электронный ресурс] // Всероссийский омнибус GFK. 2017. 26 января. URL: 

http://www.gfk.com/ru/insaity/press-release/issledovanie-gfk-tendencii-razvitija-internet-auditorii-v-rossii/ (дата обращения: 15.06.2017).

7). Написание баг репорта [Электронный ресурс] // Про тестинг.ru URL: http://www.protesting.ru/testing/bugwriting.html (дата обращения 25.06.2017).

8). Особенности тестирования приложений на мобильных устройствах [Электронный ресурс] // Enterra.ru URL: http://www.enterra.ru/blog/mobile_qa/ (дата обращения 28.06.2017).

9). Савин Р. Тестирование Дот Ком, или Пособие по жестокому обращению с багами в интернет-стартапах. — М.: Дело, 2007.

10). Email address [Электронный ресурс] // Wikipedia URL: https://en.wikipedia.org/wiki/Email_address#Examples (дата обращения: 28.07.2017).

  1. Исследование GfK: Тенденции развития Интернет-аудитории в России [Электронный ресурс] // Всероссийский омнибус GFK. 2017. 26 января. URL: 

    http://www.gfk.com/ru/insaity/press-release/issledovanie-gfk-tendencii-razvitija-internet-auditorii-v-rossii/ (дата обращения: 15.06.2017).

  2. Исследование GfK: Тенденции развития Интернет-аудитории в России [Электронный ресурс] // Всероссийский омнибус GFK. 2017. 26 января. URL: 

    http://www.gfk.com/ru/insaity/press-release/issledovanie-gfk-tendencii-razvitija-internet-auditorii-v-rossii/ (дата обращения: 15.06.2017).

  3. Булат А. План Тестирования [Электронный ресурс] // Про тестинг. 2008. 12 июня. URL: http://alexeybulat.blogspot.ru/2008/06/test-plan.html (дата обращения: 15.06.2017).

  4. Вигерс К., Битти Д. [Wiegers K., Beatty J.] Разработка требований к программному обеспечению. 3-е изд., дополненное / Пер. с англ. — М. : Издательство «Русская редакция» ; СПб. : БХВ-Петербург, 2014 – С. 239-242.

  5. Куликов С.С. Тестирование программного обеспечения. Базовый курс : практ. пособие. — Минск: Четыре четверти, 2015 – С. 116-118

  6. Савин Р. Тестирование Дот Ком, или Пособие по жестокому обращению с багами в интернет-стартапах. — М.: Дело, 2007 С. 136-137

  7. Написание баг репорта [Электронный ресурс] // Про тестинг.ru URL: http://www.protesting.ru/testing/bugwriting.html (дата обращения 25.06.2017).

  8. Ефремова Д. Создание понятных отчетов о тестировании [Электронный ресурс] // Хабрахабр 2013. 30 декабря. URL: https://habrahabr.ru/company/performance_lab/blog/207512/ (дата обращения: 25.07.2017).

  9. Особенности тестирования приложений на мобильных устройствах [Электронный ресуср] // Enterra.ru URL: http://www.enterra.ru/blog/mobile_qa/ (дата обращения 28.06.2017).

  10. 10). Email address [Электронный ресурс] // Wikipedia URL: https://en.wikipedia.org/wiki/Email_address#Examples (дата обращения: 28.07.2017).