Обновить
115.63

Тестирование веб-сервисов *

Семь раз оттесть, один раз деплой

Сначала показывать
Порог рейтинга
Уровень сложности

Charles: незаменимый тул в арсенале QA-инженера

Время на прочтение5 мин
Количество просмотров237K

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

Чтобы редактировать выдачу сервера и воспроизводить сложные тестовые сценарии в QA Redmadrobot, мы используем Charles.
Читать дальше →

Новые возможности Safari 9 в iOS 9 и Mac OS X

Время на прочтение6 мин
Количество просмотров17K
C релизом iPhone 6s, iOS9, OS X 10.11 El Capitan и даже watchOS 2 у веб-разработчиков появилось возможность попробовать новые функции в Safari 9. Далее подробно разберем их в нашей статье.

CSS


Поддержка фонового фильтра (backdrop-filter)


Это свойство определенно в Filter Effect Level 2, позволяет применять фильтры к фону (backdrop) элемента, а не к его фону (background). Можно создавать полупрозрачный фон, например для меню на фоновом изображении. Текст хорошо читается и выглядит эффектно, как в iOS.

Фоновый фильтр
Читать дальше →

Утечка реальных ФИО пользователей через Кинопоиск.ру

Время на прочтение1 мин
Количество просмотров86K
8 октября 2015 года Яндекс «перезапустил» купленный два года назад сайт Кинопоиск.ру. Судя по всему, это крупная неудача Яндекса. Число критических сообщений от пользователей старого Кинопоиска растёт как лавина.

Новый Кинопоиск не имеет никаких очевидных преимуществ перед старым, в то время как минусов масса:
Читать дальше →

Производительное юнит-тестирование веб-приложений на примере yii2 и codeception

Время на прочтение13 мин
Количество просмотров22K
Задача данной статьи — показать самый производительный путь написания тестов в контексте разработки веб-приложений.
Здесь и дальше под термином тесты будут подразумеваться юнит-тесты.

Разработка веб-приложений сопровождается постоянным использованием в коде базы данных. Если код работы с базой данных и код работы с результатом взаимодействия с базой данных не разделен, нам потребуется база данных в подавляющем большинстве тестов проекта. Также, если код использует методы фреймворка, нам для тестов потребуется подключить фреймворк. Пока тестов мало, всё отлично. Когда тестов становится больше, замечается проблема: скорость выполнения тестов немного напрягает. Когда время выполнения всех юнит-тестов становится больше чем минута, становится невозможным постоянно запускать все тесты. Разработчик начинает запускать только часть тестов, пытаясь уменьшить негативное влияние длительного времени работы тестов, но проблема снижения эффективности тестирования со временем будет только возрастать.

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

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

Тестирование в Яндексе. Как сделать отказоустойчивый грид из тысячи браузеров

Время на прочтение7 мин
Количество просмотров41K
Любой специалист, причастный к тестированию веб-приложений, знает, что большинство рутинных действий на сервисах умеет делать фреймворк Selenium. В Яндексе в день выполняются миллионы автотестов, использующих Selenium для работы с браузерами, поэтому нам нужны тысячи различных браузеров, доступных одновременно и 24/7. И вот тут начинается самое интересное.



Selenium с большим количеством браузеров имеет много проблем с масштабированием и отказоустойчивостью. После нескольких попыток у нас получилось элегантное и простое в обслуживании решение, и мы хотим поделиться им с вами. Наш проект gridrouter позволяет организовать отказоустойчивый Selenium-грид из любого количества браузеров. Код выложен в open-source и доступен на Github. Под катом я расскажу, на какие недостатки Selenium мы обращали внимание, как пришли к нашему решению, и объясню, как его настроить.
Читать дальше →

Автоматизация тестирования Java EE веб-сервисов с помощью SoapUI и Arquillian

Время на прочтение8 мин
Количество просмотров55K
Одним из преимуществ веб-сервисов является относительная простота тестирования. Действительно, в простейшем случае все, что нам нужно для проверки работы веб-сервиса – это отправить правильно сформированный HTTP-запрос любым удобным способом и проверить, что вернулось в ответ. С помощью SoapUI – инструмента для всевозможных видов тестирования веб-сервисов (более подробно о возможностях можно почитать на официальном сайте) – этот процесс можно сделать еще удобнее, автоматизировав его: мы можем создать набор тестов, указав в нем, какие запросы следует отправлять, и задав набор правил, которым должны удовлетворять ответы от сервиса. Но, тем не менее, эти тесты мы по прежнему должны будем запускать руками, а душа жаждет полной автоматизации. Действительно, почему бы не запускать эти тесты автоматически при сборке приложения (на CI-сервере или прямо на машине разработчика)?
Читать дальше →

Как быстро и бесплатно получить доступ к windows на osx или linux

Время на прочтение2 мин
Количество просмотров48K
Среди разработчиков нередка ситуация, когда основной рабочий компьютер это mac или linux, но время от времени нужен доступ к windows: запустить специфичную программу, проверить верстку в internet explorer, поставить триальную версию corel draw для конвертации в .svg.

“Классический” способ решения этой задачи — установить одну из популярных виртуальных машин, скачать 90-дневную триал версию windows и установить ее в виртуальноый машине. Но у этого способа есть один большой минус — о необходимости деражать под рукой такую виртуальную машину разработчик обычно вспоминает в тот момент когда “о, тут нужна винда!”. А ставится windows не то чтобы очень быстро. И 90-дневный триал, что характерно, имеет обыкновение заканчиваться в самый неподходящий момент. Даже с rearm. Недавно Microsoft пошла на встречу разработчикам и сделала интересный сервис, позволяющий очень быстро и бесплатно получить доступ к нужной версии windows.
Подробности - под катом

QA в наше время. «Принцип Свитчера» или почему отрасли критически не хватает компетенции

Время на прочтение6 мин
Количество просмотров33K
Друзья, сегодня выпала возможность отвечать на вопросы на долгоиграющую тему «Как стать Тестировщиком, каковы перспективы, и что необходимо, чтобы попасть в эту сферу.»

Как водится в начале любых мнениеизложений или презентаций, дам краткую (очень краткую) информацию о себе:
Работаю в QA два с половиной года. За это время сменил три компании, поработал на разных проектах. Много общался с основателями компаний и организаторами тренингов/конференций/семинаров. Проводил собеседования и следил за развитием рынка.

Следовательно, приведённое ниже мнение является лишь результатом личных наблюдений.



Разделю пост следующие части:
1. Наблюдения
  • Почему отрасль Тестирования низкоквалифицирована?
  • Личный опыт
  • «Принцип Свитчера» и его влияние на QA

2. Возможные решения
Читать дальше →

Проверять или не проверять — вот в чём вопрос

Время на прочтение4 мин
Количество просмотров27K
image

Немало копий поломано в вопросе о том, как следует проверять адрес электронной почты (например, habrahabr.ru/post/175329), но позвольте предоставить вам немного статистики с реального проекта.
Читать дальше →

SpiderTest: автотесты своими руками

Время на прочтение7 мин
Количество просмотров34K


Довольно часто среди начинающих (и даже не очень) тестировщиков приходится слышать: «вот если бы я умел писать автотесты, я бы…». Как правило этим «если бы» ребята и ограничиваются. На вопрос: «А почему не учишься писать?» чаще всего отвечают: «Программирование это не мое». Действительно, тем для кого программирование темный лес, погрузиться в мир автотестов довольно затруднительно, ведь скрипт сам себя не напишет. В этой статье я хотел бы поговорить о том, как из ручного тестировщика стать крутым автотестером.
Читать дальше →

Билайн автоматически меняет HTML теги

Время на прочтение2 мин
Количество просмотров74K



HTML код до и после работы Билайна. Найдите отличия!

Недавно я написал две статьи про оператора связи Билайн:
Билайн автоматически добавляет тулбар с поиском Mail.Ru
Билайн автоматически добавляет тулбар и изменяет дизайн сайтов

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

Теперь оператор связи меняет атрибут src у тега iframe и фреймы перестают работать!
Читать дальше →

Новый взгляд на MindMap в тестировании

Время на прочтение5 мин
Количество просмотров30K


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

Читать дальше →

Проверьте Ваши сайты на уязвимость TLS Logjam

Время на прочтение2 мин
Количество просмотров13K
Пару месяцев назад в протоколе TLS обнаружили уязвимость, которая получила название Logjam. Проведенные исследования показали, что большое число серверов подвержено этой уязвимости, так как, применяя защищенные соединения, используют типичные и наиболее распространенные простые ключи шифрования размером 512 бит. Ранее, такой длины вполне могло хватить для защиты соединения клиента с сервером. На сегодняшний же день, проведены исследования по вычислению наиболее распространенные ключей. Host-tracker предлагает функционал, который позволяет моментально проверить данную уязвимость.


Читать дальше →

Ближайшие события

Подводные камни A/Б-тестирования или почему 99% ваших сплит-тестов проводятся неверно?

Время на прочтение8 мин
Количество просмотров55K
image

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

За этой популярностью скрывается практически полное отсутствие культуры в организации, проведении и анализе результатов экспериментов. В Retail Rocket мы накопили большую экспертизу в оценке экономической эффективности от систем персонализации в электронной коммерции. За два года был отстроен идеальный процесс проведения A/Б-тестов, которым мы и хотим поделиться в рамках этой статьи.
Читать дальше →

HP StormRunner Load. Практическое руководство. Часть III

Время на прочтение3 мин
Количество просмотров4.3K
Привет Хабр! Сегодня предлагаем вашему вниманию третью часть цикла статей, посвящённого HP StormRunner Load. Предыдущие части: I и II.



В этой части поговорим про анализ результатов.
Читать дальше →

Лекции Техносферы. 2 семестр. Методы обеспечения качества и тестирования web-приложений

Время на прочтение4 мин
Количество просмотров86K
Лето только начинается, но это не повод прекращать учиться. Предлагаем вам ознакомиться с очередной порцией знаний в рамках проекта «Лекции Техносферы». Цель курса — ознакомить студентов с актуальными методологиями тестирования и обеспечения качества современных веб-приложений. Курс позволит слушателям получить достаточные знания для овладения и применения на практике эффективных приемов построения процесса тестирования и обеспечения качества.

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


Читать дальше →

Google Developers Launchpad — всё что нужно для успешного старта

Время на прочтение1 мин
Количество просмотров14K
Привет, Хабр! Мы стараемся поддерживать разработчиков инструментами, технологиями, информацией и вниманием. Одно из направлений нашей деятельности — программа Google Developers Launchpad, система поддержки стартапов и разработчиков приложений. Она была не так давно запущена в мире и практически сразу пришла и в Россию.



В рамках этой программы мы предоставляем различные возможности: как бизнес-услуги, PR-продвижение, так и технические вещи. Например, доступ к сервису Firebase, расширенный доступ к Google Maps API, к инструментам тестирования и тому подобное. Мы также даём возможность командам один на один пообщаться с экспертами Google, которые могут оценить дизайн и инфраструктуру приложения, посоветовать, как лучше реализовывать те или иные функции или оптимизировать приложение.

Программа перспективная и ряд российских проектов уже прошел или сейчас проходит через неё. Вместе с проектом AppTractor.ru мы отобрали шесть участников Launchpad и поговорили с ними об их работе.
Читать дальше →

Python Meetup 24.04.15: Python-тесты, Rest сервисы на Flask и GUI приложение за 5 минут

Время на прочтение1 мин
Количество просмотров17K
Последняя пятница апреля не стала исключением для встречи сообщества любителей языка Python. В этот раз спикеры на Python Meetup поделились следующими темами:
  • Grail: шаги для ваших Python-тестов
  • Rest сервисы на Flask
  • GUI приложение за пять минут

Видео и ссылки на презентации под катом. Приятного просмотра!

image
Читать дальше →

Обзор частых вопросов по тестированию ПО на собеседованиях и ответы на них

Время на прочтение21 мин
Количество просмотров662K
Главная цель данной статьи – помочь преодолеть страх, который возникает у тестировщиков ПО (как начинающих, так и опытных) к предстоящему интервью в связи с незнанием грядущего.

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

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

HP StormRunner Load. Практическое руководство. Часть II

Время на прочтение8 мин
Количество просмотров5.6K
Продолжаем серию статей, посвященных HP StormRunner Load.
Первую часть вы можете почитать здесь

УПРАЖНЕНИЕ 2. Создание скрипта HP TruClient


РОЛЬ: Инженер производительности
В этом упражнении мы рассмотрим нагрузочный тест с использованием HP TruClient – агента записи, подключаемого к браузеру Firefox.

Что представляет собой HP TruClient?


HP TruClient – это передовой механизм записи, который подключается к браузеру Firefox (существует также версия TruClient для Internet Explorer, версия для Chrome находится в стадии разработки), чтобы записывать ваши действия в ходе навигации по браузеру. TruClient создает скрипт этих действий, запуск которого может быть воспроизведен несколькими виртуальными пользователями. Число таких пользователей затем может быть увеличено, чтобы создать требуемую нагрузку на сервер.
Скрипты HP TruClient отличаются от некоторых других типов скриптов, поскольку они более реалистично отражают действия пользователя браузера. Скрипт на основе API (Application Programming Interface) точно воспроизводит нагрузку на сервер, но не содержит всех тех задач, которые могут быть возложены на сервер с точки зрения человека, использующего браузер.
Преимущество скриптов TruClient заключается в том, что их гораздо проще создавать и поддерживать. Браузеры (и TruClient) автоматически выполняют корреляцию данных конкретной сессии, в то время как в скриптах HTTP/HTML она должны быть тщательно запрограммирована. Оба типа записей формируют необходимую нагрузку, однако HP TruClient создает более простую имитацию реальных пользователей и их полного взаимодействия с браузером.
Единственный недостаток, характерный для скриптов HP TruClient, связан с масштабируемостью. При воспроизведении записи API на сервере требуется очень небольшое количество ресурсов (процессора и памяти). Это означает, что на данном аппаратном обеспечении можно запустить больше таких виртуальных пользователей, чем виртуальных пользователей TruClient. Тем не менее, учитывая низкую стоимость облачных генераторов нагрузки, использование скриптов TruClient может оказаться вполне выгодным.
Читать дальше →