Рубрика «Тестирование веб-сервисов» - 51

Гейзенбаг 2017 Piter: Call for Testing - 1Старший инструктор Дуайт Т. Барнс (Half-Life) о конференции по тестированию Гейзенбаг 2017 Piter: «… Как твоё имя, солдат? Представляешь, твоё имя каким-то мистическим образом попало наверх списка продвинутой тренировки! И я попрошу тебя… а ну тащи своё тело вниз на тренировочную зону и отрапортуй полковнику Шарпу!… До Гейзенбаг 2017 Piter осталось три недели — все взводы уже оформили бейджики и вовсю полируют штиблеты. А тебя-то где носит? На конференции будут все: спецы по автоматическому и нагрузочному тестированию, тимлиды, разработчики. 17 докладов в 3 треках за один день — это тебе не мышку щелкать. Ветераны доложат о новых боевых приемах практического и хардкорного тестирования на реальных проектах.»

Давайте посмотрим, что будет ждать вас на месте.
Гейзенбаг 2017 Piter: Call for Testing - 2

Учитывая мнения участников Гейзенбаг 2016 Moscow, мы поддали жару и увеличили количество технически сложных, глубоких и необычных докладов. Для вашего удобства мы прикрутили к каждому докладу индикацию хардкорности, чтобы вы точно знали, где раздают РПГ, а где — мастер-класс по бою монтировкой. Для тех, кому до Питера не добраться, мы делаем онлайн-трансляцию с возможностью задавать «вопросы из зала» во время докладов и смотреть интервью со спикерами в перерывах между сессиями.

Итак, обзор докладов с группировкой по тематике:
Читать полностью »

В IT все происходит стремительно, и полгода-год — достаточный срок для кардинальных перемен. Это применимо и к автоматическому тестированию. Чтобы узнать, как изменился этот сегмент и отношение самих тестировщиков к своей профессии, поговорим с двумя опытнейшими специалистами в этой области — Игорем Хролом и Илари Хенриком Эгертером.

Автоматизация тестирования: кто должен этим заниматься, кому это нужно и как меняется эта область - 1
Читать полностью »

image
TLDR для нетерпеливых — в принципе можно закрывать статью

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

Я больше на работаю в этой сфере, но я хочу поделиться тремя аспектами онлайн платежей: i) бизнес и ситуация на рынке на 2016-2017 год (гайд для менеджера) ii) детали технической интеграции (CTO) iii) поведение клиента / дизайн / верстка платежной странички (дизайн, верстка, тестирование).

Весь этот опыт набран не сразу — примерно за 1.5 — 2 года активного ковыряния в этой сфере. Если вас не интересует бизнес опыт, а интересуют только материалы по дизайну — смело пропускайте первые спойлеры.

Читать полностью »

Добрый день, дорогие друзья.

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

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

  • Дело в том, что я хотел бы писать на своем любимом питоне, потому что очень не люблю JavaScript, а это уже означает, что большая часть уже не работала бы (или пришлось их как-то склеивать, что тоже отстой).
  • Читать полностью »

Soft Mocks для Go!

Soft Mocks для Go! (переопределение функций и методов в runtime) - 1 Основная идея Soft Mocks для PHP — это переписывание кода «на лету» перед include(), чтобы можно было поменять реализацию любых методов, функций и констант во время исполнения. Поскольку go — компилируемый язык, то логично делать то же самое на этапе компиляции. В этой статье я расскажу по свой проект Soft Mocks for Go.

Функциональность

Возможности Soft Mocks for Go весьма ограничены — вы можете временно переопределить нужные вам функции и методы, а потом откатить свои правки. Также можно вызвать оригинальную функцию.

При использовании soft mocks, следующий код:

func main() {
    closeFunc := (*os.File).Close
    soft.Mock(closeFunc, func(f *os.File) error {
        fmt.Printf("File is going to be closed: %sn", f.Name())
        res, _ := soft.CallOriginal(closeFunc, f)[0].(error)
        return res 
    })  
    fp, _ := os.Open("/dev/null")
    fmt.Printf("Hello, world: %v!n", fp.Close())
}

Напечатает вот что:

File is going to be closed: /dev/null
Hello, world: <nil>!

Скачать библиотеку можно по адресу: github.com/YuriyNasretdinov/golang-soft-mocks

Читать полностью »

Забавно, как всё меняется. Пятнадцать лет я свято придерживался принципов TDD (разработка через тестирование, или, как её раньше называли, подход test-first) или уж по крайней мере того взгляда, что разработчикам следует писать юнит-тесты. Но в последнее время я всё чаще говорю не «Это нужно затестить», а «Зачем вы писали этот тест?».

Трагедия стопроцентного покрытия кода - 1

Читать полностью »

image

Каждый успешный проект софтверной компании начинается с идеи, но перед тем, как она станет реальным продуктом, необходимо пройти большой путь проб и ошибок. Сегодня мы хотим рассказать о некоторых проектах Virtuozzo, которые смогли (или не смогли) стать востребованными на рынке продуктами
Читать полностью »

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

Тестирование: простая дорожка в IT или серьезная затея? - 1
Читать полностью »

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

Ненадёжные (flaky), то есть недетерминированные тесты ведут себя иначе. Они могут показать как положительный, так и отрицательный результат на одном и том же коде. Другими словами, сбой теста может означать, а может и не означать появление новой проблемы. И попытка воспроизвести ошибку путём перезапуска теста на той же версии кода может привести или не привести к успешному проходу теста. Мы рассматриваем такие тесты как ненадёжные, и в конце концов они теряют свою ценность. Если изначальная проблема — это недетерминизм в рабочем коде, то игнорирование теста означает игнорирование бага в продакшне.

Ненадёжные тесты в Google

В системе непрерывной интеграции Google работает около 4,2 млн тестов. Из них примерно 63 тыс. показывают непредсказуемый результат в течение недели. Хотя они представляют менее 2% от всех тестов, но всё равно ложатся серьёзным бременем на наших инженеров.
Читать полностью »

Как хакеры атакуют веб-приложения: боты и простые уязвимости - 1

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

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

Для сбора исходных данных по атакам мы использовали данные, полученные в ходе пилотных проектов по внедрению межсетевого экрана прикладного уровня PT Application Firewall (PT AF) в 2016 году. В пилотных проектах принимали участие государственные учреждения, организации сферы образования, финансов, транспорта, промышленности и IT. Среди рассматриваемых систем присутствуют как российские компании, так и зарубежные. Все приведенные в данном исследовании примеры атак были проверены вручную на предмет ложных срабатываний и являются достоверными.Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js