Разное

Ace your homework & exams now with Quizwiz!

Коды ответа (состояния) HTTP

Код ответа (состояния) HTTP показывает, был ли успешно выполнен определённый HTTP запрос. Коды сгруппированы в 5 классов: Информационные 100 Успешные 200 Перенаправления 300 Клиентские ошибки 400 Серверные ошибки 500

Черный ящик

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

Когда происходит Валидация и Верификация?

1) Верификация 2) Валидация

Fiddler

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

http VS https

HTTPS не является отдельным протоколом передачи данных, а представляет собой расширение протокола HTTP с надстройкой шифрования; передаваемые по протоколу HTTP данные не защищены, HTTPS обеспечивает конфиденциальность информации путем ее шифрования; HTTP использует порт 80, HTTPS — порт 443.

PUT vs POST

POST это отправка новых данных на сервер. PUT вносит изменения в уже имеющуюся на сервере информацию. Например, PUT изменение пароля, т.е. уже имеющейся записи.

Postman

Postman — это набор инструментов для тестирования API. Он является средой разработки для создания, тестирования, контроля и публикации API-документации. Назначение Postman — тестирование отправки запросов с клиента на сервер и получения ответа от сервера. Коллекция запросов позволяет выполнять несколько запросов один за другим. Использование коллекций значительно сокращает время тестирования запросов.

QA

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

Error(mistake)

Действие человека, которое приводит к неправильному результату

Ежедневная сборка (daily build)

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

Протестировать поле ввода с диапазоном допустимых значений от 1 до 100 (техника анализа классов эквивалентности)

Допустимые значения (от 1 до 100); Недопустимые значения: от — ∞ до 0; от 101 до + ∞; специальные символы (# @ + — / _ : ; " ' и т.д.); буквы. Берем, например, 5, -29, 102, +, к Используя классы эквивалентности можно протестировать поле ввода минимум из 5 тестов.

Charles Proxy

Charles представляет собой кроссплатформенное приложение прокси-сервера для отладки HTTP, написанное на Java. Он позволяет пользователю просматривать HTTP, HTTPS и активированный трафик TCP-порта, доступ к которому осуществляется с локального компьютера, на него или через него. Сюда входят запросы и ответы, включая HTTP-заголовки и метаданные (например, файлы cookie, кэширование и кодирование информации), с функциями, предназначенными для помощи разработчикам и тестировщикам в анализе соединений и обмене сообщениями. Сниффинг — процесс мониторинга и перехвата всех пакетов, проходящих через сеть, с помощью инструментов сниффинга (Charles Proxy).

QA vs QC

QA призвано улучшить ПО через улучшение процесса разработки, тестирование - через обнаружение багов. QA направлено на превентирование багов, а тестирование на их поиск.

SOAP vs REST

SOAP — это формат протокола, основанный на XML, тогда как REST — это архитектурный подход. Специфика SOAP — это формат обмена данными. Специфика REST — использование HTTP в качестве транспортного протокола.

TCP vs UDP

TCP применяется там, где требуется точная и подтверждаемая передача данных - например, отправка фотографий, или переписка между пользователями. UDP, в свою очередь, нужен для общения в голосовом формате, или при передаче потокового видео, например, с веб-камер или IP-камер.

UX vs UI

UX - опыт пользователя (User Experience). Термин подразумевает ощущения, получаемые пользователем при взаимодействии с интерфейсом: насколько легко/трудно выполнить действие для достижения нужной цели. UI - пользовательский интерфейс (User Interface). Понятие определяет внешние характеристики продукта: цвета дизайна, удобство обращения, читабельность текста и прочие визуальные элементы. UX-дизайнер фокусируется на том, как продукт работает, а UI-дизайнер — как выглядит. Продуманный интерфейс может быть не очень красивым, но прекрасно работающим (например, Facebook) — а вот неэффективный пользовательский опыт красивым интерфейсом не спасешь.

VPN

VPN (англ. Virtual Private Network — виртуальная частная сеть) — это безопасное зашифрованное подключение пользователя к сети, с которым он может обходить локальные ограничения и сохранять конфиденциальность. Зачем? Надежная защита. Передаваемая информация доступна только при наличии ключа шифрования; Маскировка геолокации. Данные о геолокации поступают не с устройства, а с VPN-сервера. Он может находиться в другой стране, и определить местоположение становится невозможно. Кроме того, сервис может даже не вести журнал действий пользователя. Соответственно, никто не получит доступ к истории его действий, потому что ее просто нет; Доступ к региональному контенту. В поездке за границу можно лишиться возможности смотреть контент, предназначенный для вашего «родного» региона. Безопасное соединение «подменяет» ваше местоположение местоположением промежуточного сервера, находящегося в другой стране; Защищенная передача данных. При удаленной работе вам может понадобиться доступ к конфиденциальным корпоративным данным. Чтобы снизить вероятность их утечки, применяют подключение с шифрованием данных.

Два основных формата передачи данных

XML — используется в SOAP (всегда) и REST-запросах (реже); JSON — используется в REST-запросах.

Severity

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

Валидация vs Верификация

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

Пример серого ящика

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

Валидация и Верификация ISTQB

Верификация (verification): Доказанное объективными результатами исследования подтверждение того, что определенные требования были выполнены. Валидация (validation): Доказанное объективными результатами исследования подтверждение того, что требования для ожидаемого конкретного использования приложения были выполнены.

Пример белого ящика

Если мы знакомы с исходным кодом, то знаем, где программист прописал ветвление (логическая операция если... то...), какие знаки поставил, чтобы верифицировать поле ('>=' или просто '>'). При создании текст-кейса мы можем воспользоваться этими знаниями и проверить все ветви программы, а вот проверкой граничных значений можем пренебречь, так как знаем, что программист поставил верный знак. При этом нам не обязательно иметь пользовательский интерфейс. Мы можем тестировать наш продукт, вводя необходимые данные прямо в программные функции и процедуры.

Идентификация/Аутентификация/Авторизация

Идентификация — процедура, в результате выполнения которой для субъекта идентификации выявляется его идентификатор, однозначно определяющий этого субъекта в информационной системе. Аутентификация — процедура проверки подлинности, например проверка подлинности пользователя путем сравнения введенного им пароля с паролем, сохраненным в базе данных. Авторизация — предоставление определенному лицу или группе лиц прав на выполнение определенных действий.

Defect (fault, bug)

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

Сервер

Мощный компьютер, предназначенный для хранения информации и обеспечения доступа к ней с удалённых клиентских устройств.

Критерии выхода

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

Протокол

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

Главные отличия TCP и UDP

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

JMeter

Настольное приложение Java с открытым исходным кодом, предназначенное для проведения тестирования нагрузки и измерения производительности. Оно позволяет имитировать нагрузку и предоставляет несколько способов получения данных о производительности (в том числе графики, файлы CSV и XML).

Белый ящик

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

Класс эквивалентности

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

Тестовое окружение

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

QC

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

Failure

Отклонение компонента или системы от ожидаемого выполнения, эксплуатации или результата.

Error/mistake/defect/fault/bug/failure

Ошибка (Error/mistake) - ошибка пользователя, то есть он пытается использовать программу иным способом. Дефект (Defect/fault/bug) - ошибка программиста (или дизайнера или еще кого-то, кто принимает участие в разработке), то есть в программе что-то идет не так, как планировалось и программа выходит из-под контроля. Проблема в коде, системе, документе. Сбой (Failure) - дефект, который виден в программе; результат дефекта; сбой в работе компонента, всей программы или системы.

Условие — в поля ввода можно внести только целые числа от 0 до 10 000 (техника анализа граничных значений)

Первое граничное значение — 0 Второе граничное значение — 10 000 -1, 0, 1 9 999, 10 000, 10 001

Жизненный цикл ПО

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

SSL, TLS

По сути эти протоколы, TLS и SSL, работают одинаково, принципиальных различий нет. TLS, можно сказать, является преемником SSL, хотя они и могут использоваться одновременно, причем даже на одном и том же сервере. Такая поддержка необходима для того, чтобы обеспечить работу как с новыми клиентами (устройствами и браузерами), так и с устаревшими, которые TLS не поддерживают. Это протокол шифрования, который позволяет кодировать данные для более безопасного обмена. Когда вы смотрите видео на YouTube, загружаете фотографию в Facebook или открываете Instagram, ваш браузер и сервер обмениваются информацией. Благодаря SSL информация, которая передаётся, защищена от посторонних: администратора Wi-Fi сети, провайдера, оператора и других лиц — значит она не может быть перехвачена и использована в мошеннических целях. Кроме того, SSL-сертификат выступает в качестве подтверждения надёжности ресурса и даёт возможность проверить, кто является его настоящим владельцем. Можно сказать, что SSL-сертификат — это своего рода уникальная цифровая подпись сайта. SSL-сертификат необходимо подключать к сайтам, которые работают с финансами и персональными данными пользователей. Это интернет-магазины, банки, платёжные системы, социальные сети, почтовые сервисы и любые другие проекты.

HTTP

Прикладной протокол передачи данных в сети. На текущий момент используется для получения информации с веб-сайтов. Протокол HTTP основан на использовании технологии «клиент-сервер»: клиент, отправляющий запрос, является инициатором соединения; сервер, получающий запрос, выполняет его и отправляет клиенту результат.

Прокси-сервер

Прокси-сервер — это дополнительное звено между вами и интернетом. Некий посредник, который отделяет человека от посещаемого сайта. Создает условия, при которых сайт думает, что прокси — это и есть реальный человек. Зачем? Для обеспечения конфиденциальности. Чтобы сайты не знали, кто именно их посещает. Для повышения уровня безопасности при выходе в сеть. Базовые атаки будут направлены именно на прокси. Еще он нужен, чтобы получать доступ к контенту, который существует только в определенной локации. Чтобы ускорить доступ к некоторым ресурсам в интернете. Ну и для того, чтобы получить доступ к заблокированным страницам. Сайтам, мессенджерам и так далее. Все за счет того, что прокси подменяет IP-адрес, а трафик проходит через дополнительный сервер, на котором могут быть кэшированные данные или организованы дополнительные механизмы защиты данных.

Билд («сборка», build)

Промежуточная версия программного средства

IPX/SPX

Протокол IPX работает на сетевом уровне модели OSI, обеспечивает доставку пакетов (аналог IP из стека TCP/IP). Протокол SPX работает на транспортном и сеансовом уровнях, обеспечивает поддержание сеанса связи и гарантированную доставку данных (аналог TCP).

Cache vs cookies

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

HTTPS

Расширение протокола HTTP, поддерживающее шифрование посредством криптографических протоколов SSL и TLS.

Severity vs Priority

Серьезность (Severity) - это атрибут, характеризующий влияние дефекта на работоспособность приложения. Приоритет (Priority) - это атрибут, указывающий на очередность выполнения задачи или устранения дефекта.

Priority

Степень важности, присваиваемая объекту

Релиз

Финальный билд

Баг

Это отклонение фактического результата от ожидаемого результата.

Граничные значения

Это те места, в которых один класс эквивалентности переходит в другой.

JSON

Это формат, который хранит структурированную информацию и в основном используется для передачи данных между сервером и клиентом. Текстовый формат обмена данными, основанный на JavaScript. Легко читается человеком и машиной. Это просто способ организации данных таким образом, чтобы они легко парсились через код. Парсить — собирать и систематизировать информацию, размещенную на определенных сайтах, с помощью специальных программ, автоматизирующих процесс.

Набор навыков тестировщика

◦ Желание «ломать» вещи; ◦ Желание исследовать и экспериментировать; ◦ Хорошие коммуникативные навыки; ◦ Умение спрашивать и задавать вопросы.

Тестирование зависит от контекста. Что включает контекст?

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


Related study sets

Regulations: Securities Exchange Act '34 Review Questions

View Set

MGMT 490: Exam 1 - Chapter PowerPoints

View Set

Domain 4: Fire Prevention and Protection

View Set

principles of microeconomics final

View Set

marketing chapter 4 (covered in class)

View Set