Как стать автором
Обновить
78.47

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

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

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

Какая бывает документация

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

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

Однако помимо ТЗ есть еще куча другой документации, которую тоже стоит проверить. Как минимум вычитать, нет ли ошибок. Давайте посмотрим, какая бывает документация:

Читать далее
Всего голосов 23: ↑18 и ↓5 +13
Комментарии 23

Mockito. Из чего он приготовлен и как его подавать?

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

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

Чему же я удивился? Например, этому:

private static class Apple {
   private String color;
   public String getName() {return color;}
}

@Test
public void basic() {
   Apple apple = mock(Apple.class);
   when(apple.getName()).thenReturn("Red");
   assertEquals("Red", apple.getName()); // true
}

С точки зрения написания кода, это очень красиво и понятно:

  • Мы создаём экземпляр-заглушку для класса Apple.
  • Затем мы как бы говорим, когда вызывается метод apple.getColor(), то верни «Red».
  • Далее мы просто проверяем действительно ли apple.getColor() возвращает то, что мы хотим, и это работает!

Внимание! Не читайте дальше, если и дальше хотите верить в магию. Дальнейшее содержание статьи отнимет у вас и эту толику детского счастья.

Приятного чтения!
Всего голосов 16: ↑15 и ↓1 +14
Комментарии 4

Кому с Redux жить хорошо

Время на прочтение 20 мин
Количество просмотров 9.4K
Приветствую всех любителей хорошей инженерки! Меня зовут Евгений Иваха, я фронтенд-разработчик в команде, занимающейся дев-программой в ManyChat. В рамках дев-программы мы разрабатываем инструменты, позволяющие расширять функциональность ManyChat за счет интеграции со сторонними системами.

Существует мнение, что разработка через тестирование, или по канонам Test Driven Development (TDD) для фронтенда не применима. В данной статье я постараюсь развенчать этот миф и покажу, что это не только возможно, но и очень удобно и приятно.

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


Читать дальше →
Всего голосов 14: ↑12 и ↓2 +10
Комментарии 66

Быстро разрабатываться и не падать: инструменты и опыт поиска Маркета. Доклад Яндекса

Время на прочтение 12 мин
Количество просмотров 3.3K
Поговорим о взаимодействии разработчика с ручными и автоматическими тестировщиками. Тимлид команды разработки в Маркете Юрий Акатов yuraaka рассказал о том, как создать платформу модульных автотестов и интегрировать её в процесс релиза, о проблемах нагрузочного тестирования и автоматизации, а также об отладке кода на продакшене и минимизации ущерба от непойманных багов, которые прокрадываются в релиз.



— Всем привет. Меня зовут Юра, я около семи лет работаю в поиске Маркета. Сегодня мы с вами поговорим о нашем опыте, о том, как мы организовали процессы и инструментарий, чтобы быстро разрабатываться и не падать.
Читать дальше →
Всего голосов 12: ↑11 и ↓1 +10
Комментарии 1

Истории

Инверсия контроля на голом TypeScript без боли

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

Здравствуйте, меня зовут Дмитрий Карловский и (сколько себя помню) я борюсь со своим окружением. Ведь оно такое костное, дубовое, и никогда не понимает, что я от него хочу. Но в какой-то момент я понял, что хватит это терпеть и надо что-то менять. Поэтому теперь не окружение диктует мне, что я могу и не могу делать, а я диктую окружению каким ему быть.

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

Итак, что мы хотим получить:

Что-что?
Всего голосов 21: ↑15 и ↓6 +9
Комментарии 12

Тестирование в эпоху ИИ

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

Джеймс Уиттакер известен прежде всего как автор книг и визионер в тестировании. Одна из самых известных его книг — «Как тестируют в Google». Помимо Google, он работал в других гигантах вроде Microsoft. В общем, этого человека интересно послушать, о чём именно он бы ни говорил.

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

Какие скиллы нам понадобятся, чтобы успешно работать в таком мире? Узнаем под катом — мы выложили видео доклада и подготовили его текстовый перевод. Далее повествование будет от лица спикера.

Читать далее
Всего голосов 19: ↑19 и ↓0 +19
Комментарии 2

Я твой WAF payload шатал

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

Пару недель назад команда Vulners опубликовала сравнение нескольких популярных WAF. Поймав себя на мысли - "а как оценивать качество его работы?", я решил разобрать подробнее тему security-тестов и критериев оценки Web Application Firewall. Статья пригодится, в первую очередь, тем, кому интересна тема веб-безопасности, ровно как и счастливым обладателям WAF.

Читать далее
Всего голосов 8: ↑7 и ↓1 +6
Комментарии 0

Мобильное тестирование, автоматизация и тестирование API: С чем нужно уметь работать тестировщику в 2021 году

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

Хабр, привет!

Специалисты «Рексофт» собрали актуальные инструменты, которые облегчат жизнь тестировщику и помогут быстрее справляться с привычными задачами.

Итак, поехали!

Читать далее
Всего голосов 7: ↑5 и ↓2 +3
Комментарии 1

Jenkins Pipeline. Что это и как использовать в тестировании

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

Меня зовут Александр Михайлов, я работаю в команде интеграционного тестирования компании ЮMoney.

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

Надеюсь, что эта статья будет интересна как новичкам, так и тем, кто съел собаку в автоматизации тестирования. Мы рассмотрим базовый синтаксис Jenkins Pipeline, разберемся, как создать джобу на основе пайплайна, а также я расскажу про опыт внедрения неочевидной функциональности в CI — запуска и дожатия автотестов по условию.

Читать далее
Всего голосов 13: ↑13 и ↓0 +13
Комментарии 7

Кейс: автоматизация тестирования верстки сайта с помощью скриншотов

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

Привет, меня зовут Фахридин Джамолидинов, я специалист департамента тестирования в «Ростелеком ИТ». Занимаюсь автоматизацией тестирования основного сайта компании rt.ru. Наш сайт – это не только витрина для информирования клиентов и продаж услуг и товаров для сегментов B2C, B2B и B2O, он ещё предназначен для обслуживания текущих клиентов: FAQ, чат, формы обратной связи, платежные формы и т.п. Он постоянно обновляется, и каждый раз после выпуска новой версии нужно проверять сотни страниц с богатым, динамичным UI на работоспособность в браузерах и адаптивность вёрстки.

Конечно же на этапе разработки применяется практика design review со стороны наших продуктовых дизайнеров, но нет-нет да проблемы всплывали: где-то элементы перекрываются, съезжаются, не сохраняется единый стиль.

Осознавая, что ручное регрессионное тестирование существующего UI превращается в кошмар и отнимает кучу времени, мы решили автоматизировать данный процесс. Сегодня мы покажем, как работает автотестирование по скриншотам – будем акцентировать внимание на функционал aShot, или как помочь автотестам «видеть» ошибки.

Читать далее
Всего голосов 9: ↑5 и ↓4 +1
Комментарии 5

Топ-3 плагина для автозаполнения полей

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

Сегодня я расскажу про плагины, которые помогают быстро заполнить поля тестируемой формы. Мой топ-3.

Читать далее
Всего голосов 5: ↑5 и ↓0 +5
Комментарии 0

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

Время на прочтение 4 мин
Количество просмотров 5.5K
Источник

Технология WebRTC (Web Real-Time Communications), которая описывает передачу аудио-, видеоданных и контента между браузерами без установки дополнительных расширений, получила статус рекомендованного стандарта. Об этом объявил консорциум W3C, который разрабатывает и внедряет технологические стандарты для сети интернет.

Все стандарты W3C проходят проверку на предмет поддержки доступности веб-контента, которая осуществляется APA (рабочей группой по архитектурам доступных платформ). Они напрямую связаны с обеспечением веб-доступности.

Помимо прочего, комитет IETF (Internet Engineering Task Force), который занимается развитием протоколов и архитектуры интернета, опубликовал документы с описанием архитектуры, элементов протоколов, видов транспорта и механизмов коррекции ошибок WebRTC. Все эти данные получили статус «Предложенный стандарт».
Читать дальше →
Всего голосов 20: ↑19 и ↓1 +18
Комментарии 4

AspectJ в автоматическом тестировании — несколько практических примеров

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

Мне понравился механизм аспектно-ориентированного программирования (АОП), который используется в Allure Framework для перехвата выполнения тестовых шагов, отмеченных аннотацией @Step. И я попробовал применить его в автотестировании, не подключая к тестам таких монстров, как Spring или Guice.

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

Читать далее
Всего голосов 9: ↑7 и ↓2 +5
Комментарии 0

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

Автотесты на языке разметки или как мы в Lamoda тестируем микросервисы

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

Всем привет! Меня зовут Кирилл Поляков, я QA-инженер в компании Lamoda. Мы тестируем бекэнд большой e-commerce платформы. В этой статье я расскажу, как мы пришли к автотестам на языке разметки для тестирования микросервисов и делаем это с помощью инструмента собственной разработки – Gonkey, который позволяет использовать стандартизированный набор решений и легко писать тесты на Go.


image
Читать дальше →
Всего голосов 31: ↑29 и ↓2 +27
Комментарии 2

Тестирование в Puppeteer vs Selenium vs Playwright: сравнение производительности

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

Ранее мы уже писали о том, когда бывает нужна автоматизация тестирования и какие проверки при этом используют. Сегодня предлагаем обсудить использование инструментов на практике и оценить их производительность. С разрешения Giovanni Rago – автора серии полезных материалов о тестировании – мы перевели его статью «Puppeteer vs Selenium vs Playwright: сравнение скорости» (Puppeteer vs Selenium vs Playwright, a speed comparison). Статья будет интересна тем, кто задумывается о выборе подходящего инструмента автоматизации в своих проектах.

Читать далее
Всего голосов 8: ↑7 и ↓1 +6
Комментарии 0

Mind Map в помощь тестировщику

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

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

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

Как, зачем, когда и надо ли?
Всего голосов 4: ↑3 и ↓1 +2
Комментарии 10

Callisto. Зачем мы придумали замену Selenium Grid

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

На Хабре уже не раз писали о том, что у Selenium Grid есть проблемы, которые не решить простым способом (например: раз, два, три). В этой статье мы поделимся нашим опытом и расскажем, как нам в Wrike удалось построить стабильную инфраструктуру для Selenium-тестов.

TLDR: Мы написали своё open source решение и полностью заменили им Selenium Grid.

Читать далее
Всего голосов 16: ↑15 и ↓1 +14
Комментарии 11

Тестирование с использованием Puppeteer

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


Любите ли вы тесты, как люблю их я: всеми фибрами души, со всей страстью и энтузиазмом, на которые только способен разработчик, жадный до полного покрытия кода?


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

Читать дальше →
Всего голосов 6: ↑6 и ↓0 +6
Комментарии 0

Тестирование нескольких экземпляров одного и того же мок компонента

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

Это четвертая часть серии по тестированию React с мок компонентами. Во второй части мы рассмотрели базовую форму мок компонентов. В третьей части мы добавили возможность передачи дочерних компонентов. Теперь мы рассмотрим самую сложную часть головоломки: работу с несколькими экземплярами одного и того же мока.

Читать далее
Всего голосов 6: ↑4 и ↓2 +2
Комментарии 0

Крутой агент Смит или выполняем тысячи тестов Serverless

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

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

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

Готовые интеграции с системами управления тесткейсами упростят вам жизнь ещё сильнее.

И это всё - бесплатно. Давайте разберёмся - как это работает.

Читать далее
Всего голосов 3: ↑2 и ↓1 +1
Комментарии 0

Вклад авторов