Инструменты для авто тестирования

Топ 10 инструментов автоматизации тестирования 2018

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

Не так давно свет увидел World Quality Report 2017–2018 (Мировой стандарт проверки качества), выпущенный благодаря совместному труду сразу нескольких крупных компаний (Capgemini, Sogeti и Micro Focus), в котором было отмечено ряд интересных трендов в разработке и тестировании программного обеспечения. Авторы этого отчета считают, что основные направления в развитии разработки ПО заключаются в постоянном совершенствовании автоматизации тестирования и повсеместном применении гибких и DevOps-методологий (методология, которая объединяет в себе работу программистов и системных администраторов). Так, в данном отчете указано, что компаниям необходимо внедрять интеллектуальную автоматизацию и смарт-аналитику, для того чтобы ускорить процессы принятия ключевых решений и валидации продукта. Благодаря таким нововведениям компании смогут более эффективно справляться с тестированием интеллектуальных устройств нового поколения и высокоинтегрированных продуктов, изменения в которые вносятся постоянно. В отчете также говорится о необходимости создания интеллектуальных платформ для тестирования, характеризующихся высоким уровнем адаптивности. Благодаря таким платформам можно будет обеспечить эффективную поддержку полного жизненного цикла приложения.

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

Selenium

Считается, что Selenium является самым популярным фреймворком с открытым исходным кодом, предназначенным для автоматизации тестирования веб-приложений. Разработанный где-то в далеких двухтысячных и развивающийся в течение последующего десятилетия, Selenium представляют собой фреймворк для автоматизации процесса тестирования веб-приложений. За это время он успел завоевать сердца многих тестировщиков, особенно тех, у кого в распоряжении имеются продвинутые навыки программирования и опыт написания скриптов. Selenium можно рассматривать в качестве родоначальника некоторых современных инструментов автоматизации тестирования с открытым исходным кодом, например: Katalon Studio, Watir, Protractor и Robot Framework.

Фреймворк Selenium поддерживается несколькими ОС (Windows, Mac, Linux), а также многими браузерами (Chrome, Firefox, IE, и браузерами Headless). Скрипты для данного фрейма можно написать на большинстве популярных сегодня ЯП: Java, Groovy, Python, C#, PHP, Ruby и Perl.
Однако стоит отметить, что данный фреймворк имеет как плюсы, так и минусы. К преимуществам можно отнести гибкость, а также возможность написания сложных и эффективных скриптов для тестирования разрабатываемых приложений. С другой стороны, для того чтобы начать работать с Selenium, тестировщик должен обладать незаурядными знаниями в программировании и быть готовым уделять некоторое количество своего времени и энергии для написания специальных фреймов и библиотек, обеспечивающих выполнение определенных функций в процессе тестирования.

Katalon Studio

Katalon Studio — это эффективный инструмент для автоматизации процесса тестирования веб-приложений, мобильных приложений и веб-сервисов. Katalon Studio является потомком таких фреймворков, как Selenium и Appium. Он перенял у последних множество преимуществ, связанных с интегрированной автоматизацией тестирования ПО.

Для начала работы с данным инструментом вы можете как обладать начальными знаниями в тестировании ПО, так и быть настоящим гуру своего дела. Люди, далекие от программирования, могут с легкостью запустить свой проект по автоматизации тестирования (например, запустив функцию Object Spy для записи тестовых скриптов), а для программистов и опытных тестировщиков Katalon Studio окажется полезным с точки зрения экономии времени при написании новых библиотек и поддержке существующих скриптов.

Katalon Studio может быть интегрирован в CI/CD, он прекрасно работает в связке с популярными инструментами во время тестирования ПО: qTest, JIRA, Jenkins и Git. Для него предусмотрена приятная функция — Katalon Analytics, благодаря которой пользователи получают полное представление о процессе тестирования. Для этого предусмотрены специальные отчеты, которые выводятся на экран пользователей в виде метрики, диаграмм и графиков.

Unified Functional Testing (с англ. комплексное функциональное решение для тестирования ПО) или UFT – это популярный коммерческий инструмент для функционального тестирования. Он предоставляет полный набор функций для тестирования API, веб-сервисов, а также для тестирования графического интерфейса десктопных, мобильных и веб-приложений на всех существующих платформах. Для данного инструмента предусмотрена расширенная функция распознавания объектов на основе изображений, многоразовые тестовые компоненты и документация по автоматическому тестированию.

UFT использует Visual Basic Scripting Edition, который может пригодиться для записи информации о выполненном тестировании, а также для управления объектами. UFT интегрирован с Mercury Business Process Testing и Mercury Quality Center. Инструмент поддерживает CI с помощью интеграции с инструментами CI, такими как Jenkins.

Watir

Watir — это инструмент с открытым исходным кодом для автоматизации тестирования веб-приложений, использующий библиотеки Ruby. Для Watir предусмотрена возможность кросс-браузерного тестирования в большинстве существующих браузеров: Firefox, Opera, headless-браузеров и IE. Он также поддерживает управляемое данными тестирование и интегрирован с инструментами BBD, такими как: RSpec, Cucumber и Test / Unit.

IBM Rational Functional Tester

Еще одной интересной особенностью платформы RFT является возможность ее интеграции с системами управления жизненным циклом приложений IBM Jazz (например, IBM Rational Team Concert и Rational Quality Manager).

TestComplete

TestComplete, созданный SmartBear, является эффективным инструментом для тестирования десктопных, мобильных и веб-приложений. TestComplete поддерживает различные языки сценариев, такие как: JavaScript, VBScript, Python и C ++ Script. Также как и в случае с рассмотренным ранее Katalon Studio, с помощью TestComplete тестировщики могут выполнять тестирование с использованием ключевых слов и управляемое данными тестирование. В инструменте также предусмотрена удобная функция записи и воспроизведения процесса тестирования.

TestComplete обладает схожей с UTF функцией распознавания объектов GUI, благодаря которой происходит автоматическое обнаружение и обновление объектов пользовательского интерфейса, что помогает избежать лишних хлопот по поддержанию тестовых скриптов при изменении AUT. Данный инструмент также интегрируется с Jenkins в течение CI-процесса.

TestPlant eggPlant

TestPlant eggPlant – это инструмент автоматического функционального тестирования, основанный на анализе изображений, который позволяет тестировщикам эффективно выполнять AUT. Что касается методов тестирования, то TestPlant eggPlant полностью отличается от традиционных инструментов тестирования: в нем моделирование процесса происходит таким образом, как если бы пользователь занимался тестированием приложений, а не тестировщик, для которого такой процесс заключается в написании тест-скриптов. Такая особенность позволяет тестировщикам, которые не обладают большими знаниями в программировании, применять данный инструмент автоматизации тестирования интуитивно. TestPlant eggPlant поддерживается различными платформами, для него также предусмотрена возможность управления лабораторией и CI-интеграции.

Tricentis Tosca

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

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

Ranorex

Ranorex – это платный универсальный инструмент для автоматизации тестирования веб-, мобильных и десктопных приложений. Инструмент характеризуется расширенными возможностями для распознавания GUI, применением многоразовых тестовых сценариев и возможностью записи/воспроизведения этапов тестирования ПО. Еще одной полезной чертой данного инструмента является возможность создания тестовых сценариев без необходимости писать код. Для тех тестировщиков, кто находится на самом начале пути, такая особенность окажется прекрасным подспорьем: тестировщикам не нужно будет обладать углубленными знаниями в программировании, для того чтобы проводить автоматическое тестирование своих проектов.
Инструмент поддерживает интеграцию Selenium для тестирования веб-приложений. Тестировщики могут группировать определенные результаты тестирований для разных платформ и в различных браузерах с использованием сетки Selenium. Для Ranorex также предусмотрены скидки для бизнес-клиентов.

Robot framework

Robot Framework — это фреймворк для автоматического тестирования с открытым исходным кодом, в котором реализуется подход тестирования на основе ключевых слов для приемочного тестирования и разработки через приемочное тестирование (ATDD). Robot Framework предоставляет возможность решения различных задач автоматизации тестирования. Однако его возможности могут быть расширены благодаря внедрению дополнительных библиотек с помощью Python и Java. Например, Selenium WebDriver — популярная внешняя библиотека, используемая в Robot Framework.

Читайте также:  Авто как осветлить лак

Инженеры-тестировщики могут использовать Robot Framework в качестве фреймворка для автоматического тестирования не только веб-приложений, но для приложений под Android и iOS. Robot Framework покажется простым в изучении тем тестировщикам, кто уже знаком с тестированием на основе ключевых слов.


Топ 5 лучших инструментов автоматизации тестирования в 2018 году

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

Источник

Диагностический инструмент

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

Отображение 1–44 из 56

Диагностический инструмент

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

Специальный диагностический инструмент

используется для полноценной диагностики транспортных средств, измерения компрессии на автомобилях, связанного с заменой и обслуживанием узлов трансмиссии и двигателя. Приборы для измерения давления масла, Тестеры системы охлаждения, используются для устранения дефектов в радиаторах и патрубках, для замены элементов топливной и выхлопной системы. С диагностическим инструментом удобно работать даже на улице, он надежно лежит в руках, имеет защиту от повреждений и отличается свойствами универсальности. Для выполнения мелкого ремонта и диагностики применяются тестеры-отверток, позволяющие разобрать отдельные узлы на несколько частей, провести регулировку креплений. В комплект входят обычные отвертки и изделия для проверки напряжения. Наборы ключей используются для разборки двигателя и других узлов, подтягивания деталей. Качественная хромированная сталь, из которой изготовлены запчасти, является надежной при эксплуатации в любых условиях. Инструменты ударно-режущего типа и головки с аксессуарами используются для выполнения работ по установке и регулировке узлов, по подготовке защитных материалов к монтажу, для регуляции мощности и эффективности встроенных агрегатов. Диагностический инструмент для автосервиса – это:

Компрессометры бензиновые и дизельные

Наборы для тестирования системы охлаждения

Тестеры давления масла

Наборы для выявления утечек в цилиндрах

Стробоскопы

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

Специальный диагностический инструмент можно купить в нашем интернет-магазине

Обращаем Ваше внимание, что данный Интернет-ресурс носит только информационно-ознакомительный характер и ни при каких условиях не является публичной офертой, определяемой положениями Статьи 437 ГК РФ. Для получения точной информации о стоимости товаров и услуг, представленных на данном сайте, пожалуйста, обращайтесь к нашим специалистам +7(495) 203-17-16.

Источник

Инструменты тестировщика

Какие инструменты нужны тестировщику? Об этом мы сегодня порассуждаем в этой статье, в основе которой — доклад Юлии Атлыгиной с прошлого Heisenbug. Видеозапись доклада доступна по ссылке.

zaomj3wmtscoll82vs4kvd4v9uo

Какие инструменты нужны тестировщику?

Мозг — самый важный инструмент, наверное, для любой профессии, не только для тестировщика. Глаза тоже пригодятся, особенно, если вы тестируете UI. Конечно же уши: иногда вы запускаете приложение, и ваш компьютер начинает жужжать, как самолет на взлетной полосе. Нос, ведь иногда от приложений «попахивает». Нужны и ноги: иногда у вас что-то случается, возникают какие-то вопросы, приходится к кому-то бежать, что-то спрашивать, с кем-то общаться. Руки тоже пригождаются, особенно ручным тестировщикам, далеко не всё можно автоматизировать(да и автотесты мы пишем руками). И, конечно же, сердце, ведь тестирование должно быть вашей страстью!

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

550377d42d520b108a2a830360b94765

Скриншоты

У каждого тестировщика есть свои любимые инструменты для скриншотов. Когда в вашем приложении случаются какие-то проблемы на UI (если, конечно, UI вообще есть, а даже если нет — может понадобится сделать скриншот и ответов консоли, и результатов запросов к базе), вам нужно сделать скриншот, и эти скриншоты надо делать правильно.

Мой личный фаворит — Jing, выглядит, как такое прекрасное, позитивное солнышко на вашем экране. Чем хорош: умеет делать скриншоты, умеет эти скрины сохранять как локально, так и в свое облако, умеет записывать видео. Оно, к сожалению, записывается только во Flash, и вот здесь возникла проблема: у нас в компании большая часть разработчиков работает на Mac, и мои флешевые видео там непросто открыть. Пришлось искать другой инструмент и распрощаться со своим любимым позитивным солнышком. Сейчас я больше всего пользуюсь инструментом Recordit, он позволяет сразу записывать видео и превращать его в gif одним движением, но с ним тоже есть маленькая непонятка: всё, что он записал, он сразу выкладывает к себе в облако, т.е. если у вас что-то локальное или вы не хотите ни с кем делиться тем, как выглядит ваше приложение, придется поискать что-то еще. Например, Monosnap тоже умеет делать видео, умеет сразу сохранять его локально и делать из видео gif.

Actual Result: Doesn’t work
Expected Result: Works as Expected

Когда-то давно, когда я была маленьким юным тестировщиком, нашла прекрасную последовательность шагов, которая привела меня к ошибке 500 на странице. \

24006b6052299b65ed71d3d71737dd0e

Я, конечно, записала баг репорт с шагами воспроизведения и актуальным результатом, а ожидаемый решила не писать — и так понятно, что ожидаем отсутствие ошибки. После исправления я попробовала перетестировать те же шаги, и знаете, что увидела? Просто белую страницу. Не поспоришь, ошибки 500 нет.

После этого я сделала для себя два вывода:

6af940abd7b5373e1267b252de244321

Есть инструменты, которые помогают вам делать прототипы, т.е. рисовать ваше приложение, каким бы вы его ожидали увидеть. Мне больше всего нравится Balsamiq — это такой инструмент, который позволяет вам за пару кликов сложить интерфейс визуально. У него сразу есть контейнеры, элементы, из которых вы можете нарисовать веб-страничку, мобильное приложение или что угодно, буквально перетаскивая «картинки». Есть аналог — браузерный плагин Pencil, он не такой классный, но зато бесплатный.

На одном из проектов мы практиковали QDD, «QA driven development». Наши тестировщики сами писали acceptance-критерии для задач, т.е. это делал не какой-то product owner или менеджер, а именно QA-команда, а уже после задачки подтверждались product owner’ом. Для оформления задач в том числе использовали Balsamiq, чтобы показать, как всё будет выглядеть, где какие кнопки должны быть, и отдать это всё разработчику. Проходит какое-то время, к нам приходит новый билд, и, о ужас, страничка (кроме браузерной части) выглядит вот так:

ce209566ee50a66aa39fedbffc17984b

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

Тестовые данные

Признавайтесь, у вас есть текстовые файлики с любимыми тестовыми данными? Долой файлики с текстами! Есть специальные инструменты, которые умеют эти тексты генерировать:

Картинки

Иногда бывает, что вам и не тексты совсем нужны, а картинки. Можно погуглить, поискать что-нибудь, потом попытаться отобрать, что из этого — правильного размера. А есть специальный сервис, LoremPixel, который позволяет вам эти картинки генерировать: вы можете задать размер картинки, цвет и даже тематику: котик, город, еда, транспорт и т.д. Последнее время он часто болеет, но есть не менее интресный аналог — picsum.photos

915993934a3c18de4323421e569805fa

А есть у кого-то приложение с большими формочками и кучей разных данных? Я понимаю вашу боль. Бывает, что в вашей формочке много полей, часть из которых довольно специфична: куда-то нужно вводить только e-mail, куда-то только телефон или еще что-то, и каждый раз это всё вводить утомительно. Есть плагин для Chrome, называется Form Filler, который может помочь решить проблему: у вас добавится маленькая кнопочка рядом с адресной строкой, по клику на которую ваша формочка магически превращается в заполненную форму:

Читайте также:  Авто за границей стоимость

f9722dcd5129ad3d07c1025b4e3b3d99

Заметьте: в поле e-mail действительно введены данные в формате e-mail, а там, где телефон, введен формат телефона, в выпадающих меню выбирается одно из данных списка, что сохраняет очень много времени. Обращаю ваше внимание, что в этом плагине также всё можно донастраивать, т.е. добавлять свои собственные маски, свои данные.

Pairwise Testing

Кто-нибудь использует технику попарного перебора? Не могу сказать, что использую ее каждый день, но, тем не менее, иногда пригождается. Зачем она нужна? Когда у вас есть много параметров, например, та же огромная формочка, согласно статистике, от 65 до 97% ошибок находится при попарном переборе (как видите, тут статистика сильно расплывается в числах), т.е. мы можем сэкономить много времени и почти не потерять в покрытии, если будем перебирать пары значений.

Я пользуюсь онлайн-инструментом Pairwiser (к сожалению, онлайн-версия больше недоступна, но осталась локальная версия):

9e47577d5ad4f86cf0758cbd2785b785

Есть много других инструментов, но большая часть из них — консольные, не такие наглядные, поэтому я использую Pairwiser. В нашей компании (мы занимаемся плагинами для Jira) тестировщикам приходится постоянно сочетать браузеры, разные версии Jira и Confluence, разные базы данных (зависят от версии Jira), версии других плагинов. Я завожу параметры в Pairwiser,
нажимаю «generate test» и получаю список тестов, таблицу, в которой видно, что и с чем нужно протестировать, какие инстансы нужно создать. Какая магия произошла: если бы я перебирала все значения друг с другом (см. картинку), я бы получила 60 тестов. С помощью Pairwiser я сократила это число до 21, в три раза.

Вот пример, который сделали создатели самого инструмента:

c0fbc911f20853d7c46c36af786990df

Бывает, что у вас параметров гораздо больше. У меня в примере их было всего три, здесь их гораздо больше: операционные системы, виды connection, какие-то условия между вашими параметрами (например, глупо тестировать мобильный браузер с десктопом), какие-то дополнительные параметры, можно отметить тесты как обязательные (что-то типа sanity, когда вы говорите, что мне точно нужно протестировать это сочетание параметров). И происходит магия, 32 теста вместо 18688:

13bb7b8ab0fd80b8e531777fc84e6bb5

Просто вдумайтесь, 32 вместо почти 19000! Можно сэкономить кучу времени.

UPD: пока нашла для себя другой бесплатный веб-инструмент, pairwise.teremokgames.com.

Валидаторы HTML/CSS

Немного поговорим про специфику веб. Есть сообщество World Wide Web Consortium, ребята занимаются стандартизацией HTML и CSS. Они создали валидаторы, т.е. статические анализаторы, куда вы задаете URL своего приложения и он вам выдает набор ошибок. Есть такие же штуки, которые проверяют, насколько вы совместимы с мобильными, или же проверяют линки. У этих валидаторов можно задать какой-то URL, можно прямо загрузить файл с вашим HTML. Есть плагины для браузеров, по крайней мере для Chrome точно, которые могут это делать локально.

Ответы будут выглядеть следующим образом:

1a72778b7e029e515b9d85bac669c956

Хочу вас сразу уберечь. Много из того, что вам скажет этот валидатор, править не нужно, может быть, он ничего страшного и не найдет, но очень важно про эти вещи хотя бы подумать, взять и перебрать, есть там что-то полезное или нет. Посмотрите первый пример — у тега img нет alt-атрибута. Alt — это параметр, который говорит, какой текст будет писаться, если у вас, например, отключены картинки, или картинка не загрузилась, скажем, из-за медленного интернета. Казалось бы, в нашем веке у всех интернет более-менее, в чем проблема? Ну не указано, и что? Вот здесь маленький нюанс: есть, например, люди с проблемами со зрением, которые используют специальные скринридеры. Если скринридер читает по экрану, как думаете, что он видит вместо картинки? Этот alt-текст. И если этот текст не задан, то человек никогда не узнает, что там вообще что-то было.

Вообще, никто не безгрешен. Если вбить в этот прекрасный валидатор Google.com, то он выдаст 21 ошибку, большая часть из них про устаревшие элементы. Даже у Google есть ошибки! С другой стороны, вы не Google, так что это должно вас как-то подбивать делать свои продукты лучше. Наверное, и ресурсов у вас не столько, а такой валидатор даст вам бо́льшую уверенность в том, что в разных браузерах страницы будут работать, поскольку вы совместимы напрямую со стандартом.

Performance

Обычно, когда спрашиваешь о перформанс-тестах, получаешь в ответ что-то вроде: «Перформанс — дело серьезно, этим должны заниматься специальные люди». И это правда, это огромная область, но хотя бы несколько поверхностных тестов можно провести очень легко. Есть несколько инструментов, которые на вашем сайте могут показать, какие есть проблемы, и даже проставить «оценочки», дать советы по исправлению. Если у вас ваш сервис уже где-то доступен, вы можете просто вводить URL, но также есть плагины, которые могут делать тесты локально. Первый сервис PageSpeed от Google, у него есть Chrome-плагин, который может локально проверить, насколько всё хорошо, и дать вам советы — сразу есть о чем поговорить со своими разработчиками.

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

8eb9e662b9736b4a1e24d940810b02cb

Один из параметров FirstByteTime — это время c начала перехода на страницу до тех пор, пока не появится первый бит ответа сервера на вашем сайте. Также тут есть оценка кэша, красивые графики, которые расскажут вам, что именно занимает больше всего времени на вашей страничке, картинки ли это, скрипты или HTML. Вы получаете красивые картинки с конкретными числами, с которыми вы сможете подойти к своему разработчику.

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

Еще один плагин к браузеру (к Chrome точно есть) называется Lighthouse — такой маяк, который оценивает ваше приложение с разных сторон, т.е. как приложение в общем, так и перформанс, accessibility, доступность для людей с ограниченными возможностями.

Вот так может выглядеть отчет по проверке тестирования именно перформанса:

da43a5428f7d3fc03fb0137c44eff185

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

Конечно же стоит упомянуть JMeter. Он очень популярен, но, в отличие от тех инструментов, про которые мы говорили выше, на JMeter мы обычно оцениваем скорость именно серверной части. А еще пользователи часто жалуются, что в нем не очень работает record, и люди покупают какие-то специальные продукты для того, чтобы записать сценарий и потом загружать его в JMeter. есть простой способ — вкладка называется network в браузере, где видно все запросы. Вы просто нажимаете правой кнопкой мышки и можете сохранить все эти запросы как HAR, архив HTTP. Есть также BlazeMeter Converter — специальный конвертер, который умеет превращать эти HAR-файлы в тест-план для JMeter, т.е. вы просто проделали некоторые действия у себя в браузере, зашли на специальный сайт конвертера и получили уже готовый тест-план для JMeter. BlazeMeter Converter позиционирует себя, как конвертатор не только из HAR-файлов в JMeter тест-планы, но и XML, Selenium и JSON. Если честно, кроме HAR я ничего не пробовала, если кто-то попробует, было бы классно узнать о результатах.

Эмуляторы

Поговорим про кроссбраузерность, проверки совместимости. Многие с этим сталкиваются, особенно кто тестирует веб, и особенно если нужно поддерживать Internet Explorer: тут всплывают особенно необычные проблемы, например, у IE ограниченное количество строк, которые влезают в экран, больше 46424 строк вы отобразить вообще не можете.

Как тестировать разные версии? Если с Chrome и Firefox более-менее понятно, можете себе их легко поставить и более старых версий, с IE всё не так просто: ставится не везде и 2 версии параллельно не поставить. Microsoft неожиданно пошли навстречу и сделали бесплатный сервис, где можно скачать уже готовые виртуальные машины с установленным Windows и определенными версиями IE.

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

Есть, конечно, другие сервисы, такие как Browserstack или Saucelabs, наверняка многие из вас ими когда-то пользовались или пробовали, они платные, но тоже классные.

Что касатется мобильных, то я использовала Test Object: тут можно тестировать на реальных устройствах.

Тестируем безопасность

Тестирование безопасности, как и тестирование перформанса, тоже многие обходят стороной, хотя самые простые проверки сделать не так уж и сложно. Есть плагины, правда, только для Firefox, называются XSS Me / SQL Inject Me, по названию самых популярных уязвимостей в веб-приложениях. Они работают по принципу черного ящика, то есть вы ставите себе плагины, они находят текстовые поля на странице и вставляют туда скрипты, которые есть у них в базе. Эта база — просто XML, вы можете расширять его своими данными. На выходе получается готовый отчет, какие именно тестовые сценарии прошли, какие нет, какие именно тестовые данные не заработали, на какой символ произошла какая-то проблема, т.е. я могу взять руками этот же символ, попробовать сделать на своем ресурсе и увидеть, что именно пошло не так. Здесь обращаю ваше внимание, что эти плагины раскрашивают плохо или хорошо в зависимости от HTTP-статуса. Соответственно, статус 200 — всё хорошо и ответ будет зеленым, если у вас приходит 400-500 — красным, если приходит 302 — также красным. В отчете это будут красные клеточки, и мы ручной проверкой можем удостовериться, что это redirection на ожидаемую страницу, а не куда-то вовне.

Читайте также:  Авто в раскат взять

Также есть инструменты, которые позволяют перехватывать запросы или писать свои с нуля. Я часто использую Fiddler или Charles (про него даже был отдельный пост, habr.com/company/redmadrobot/blog/269109) — отслеживаю запросы и переиспользую с измененными параметрами. Эти тесты можно выгрузить в файл и отдать автоматизаторам или просто переиспользовать позже. Также с помощью Fiddler можно быстро отправить кучу одинаковых запросов: хоткей Shift+R позволит повторить выбранный запрос сколько угодно раз.

Есть аналог для браузера — плагин tamper data (доступен и для Firefox, и для Chrome): он не такой функциональный, в нем нельзя эмулировать долгую работу сети или еще чего-то такого, но самые простые запросы, именно перехватывать и отправлять самому, подправляя их на лету, там тоже можно. Хочу обратить ваше внимание на то, что если вы работаете на Windows, я бы предпочла на вашем месте Fiddler, он всегда бесплатный. На Mac Fiddler работает так себе, т.е. официально он поддерживается, но бывают проблемы, лучше используйте Charles, только имейте в виду, что официально у них только 30 дней бесплатного использования.

Еще хочу поговорить про один плагин, Web Developer. Это инструмент на все руки, с его помощью можно и проверить HTML локально, изменять cookies, отключать, JavaScript или картинки — не нужно рыться в настройках браузера, всё всегда в одном месте на красочной и не сильно заметной панельке вверху вашего браузера.

fa9a6ac9aae045867529c65abcff37c2

Также его можно использовать и для security-тестирования: например, можно превращать выпадающие меню в текстовые поля, тем самым убирая клиентскую валидацию, проверить, готова ли серверная часть к странным данным.

Пишем тесты

Обычно первая ассоциация с «инструментами для тестирования» — это инструменты, где тесты можно писать и прогонять. Тут большое разнообразие инструментов: есть большие инструменты вроде HP QC, MS Test Manager, Test Rail. Есть бесплатные инструменты, как, например, Leantesting — если кто-то прямо сейчас выбирает, куда записывать свои тесты, обратите на него внимание. Есть Test Link, с ним очень сложно работать из коробки, зато у него открытый код и можно «допилить» под себя. Есть также и специальные инструменты для чек-листов и mind maps.

Для тех, кто пользуется Test Rail: есть специальное маленькое приложение Moqa, с помощью которого можно проходить тесты или следить за результатами прохождения прямо с мобильного. Доступен и для iOS, и для Android.

Mind Maps. Mind Maps everywhere

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

296622c4c3b2ef94d37ad848553594f1

Немного best practices: можно заранее сделать майнд-карту (или чек-лист, как вам больше нравится), верхнеуровневую, и описать в ней, про какие виды тестов нужно не забыть подумать для каждой функциональности: тестировщики часто сосредотачиваются только на acceptance-критериях и забывают подумать в общем: и про compatibility, и про перформанс, и про security и прочие виды тестов. Я стараюсь начинать именно с верхнего уровня и постепенно углубляться в детали. И да, на картинке есть ошибка. Для тех, кто будет на Heisenbug в этот четверг: если найдете ошибку, подойдите ко мне на BoF-сессии, получите маленький приз 🙂

После того, как мы посмотрели на функциональность в общем, углубляемся в детали: расписываем, какие есть объекты, какие сценарии необходимо посмотреть (CRUD — create-read-update-delete, например), какие данные можно вводить, классы эквивалентности, границы и прочее, т.е. мы уже всё больше и больше детализируем свои «тест-план».

6a67a591206418d3f12d4572745d5f00

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

Инструментов для mind-карт существует какое-то бесчисленное количество. Я последнее время всё чаще рисую их просто на бумаге, но такую карту, естественно, сложно поддерживать. Среди софтверных решений у меня любимчик, MindMup: бесплатный онлайн-инструмент, карты из которого можно сохранять просто на гуглдиск и делиться ими со своими коллегами. Среди прочих есть, например, Coggle, выглядит очень красиво, но, если вы создали кружочек не в том месте, в котором изначально хотели, вам придется сделать много кликов, чтобы все исправить. Как Atlassian-эксперт, не могу не сказать, что есть и решения внутри Jira и Confluence: есть плагин-коннектор от Mindmeister, Yoikee, но он только для Confluence, и в обеих системах доступен коннектор в LucidChart.

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

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

0a066b686522539262756a38fb889331

У вас есть какой-то перечень проверок, т.е. некая иерархическая структура, и ваш тестовый прогон — это дополнительная колонка в этой структуре. Вы просто добавляете колонку, можете заводить какие-то свои параметры, если вам нужно, например, версию операционной системы или браузеры, и один за другим проставлять статусы, прошел тест или нет, были ли какие-то вопросы. Можно оставлять комментарии, ссылки на багтрекер, есть интеграция с той же Jira. Единственный минус: этот продукт доступен только в облаках, т.е. это сервис, локально себе поставить нельзя.

Если и аналог внутри баг-трекера Jira, разработанный нашей компанией, Structure.Testy

Готовые чек-листы

Тестировщик должен понимать, что какую-то документацию рано или поздно писать всё равно придется, если вы свой продукт тестируете не один раз. Я много раз слышала отговорки типа «я же всё равно единственный тестировщик, я тут всё знаю, зачем мне эти чек-листы?». Даже если вы совсем один, это не значит, что документация не пригодится. Вам совсем одному всё равно придется тестировать ваш продукт снова и снова, и вы можете заранее облегчить себе работу.

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

А еще специально для вас у меня есть суперссылка, по которой вы можете найти целую базу готовых чек-листов: если у вас совсем ничего нет, можете начать с них, если уже есть свои документы — можно вдохновиться на новые тесты! Берите и адаптируйте для своих нужд, и пишите, если у вас есть идеи, что еще туда стоит добавить!

Выводы

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

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

Минутка рекламы. Если вам понравился этот доклад с конференции Heisenbug — обратите внимание, что уже подступает новый Heisenbug (17-18 мая, Санкт-Петербург), в его программе тоже много интересного. Надеемся увидеть там многих из вас!

Источник

Adblock
detector