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

«Стараемся дать реальные истории из жизни»: о программе Heisenbug 2018 Moscow - 1

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

А на самом деле сколько в программном комитете человек — столько и мнений. Конкретно сформулированный формат (например, «о тестировании не только для тестировщиков») задаёт направление, но всё равно можно по-разному расставлять приоритеты, и возникают разные точки зрения, порой даже взаимоисключающие. И в итоге программа конференции рождается на стыке разных взглядов.

В преддверии Heisenbug 2018 Moscow (6-7 декабря) мы расспросили участников программного комитета о программе, и их ответы в чём-то тоже различались. Поэтому каждое отдельное мнение — лишь часть картины, но вместе они позволяют многое понять о том, что можно будет услышать в четверг-пятницу на конференции.
Читать полностью »

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

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

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

Замедляем Windows, часть 3: завершение процессов

Невызванная функция замедляет программу в 5 раз - 1

Автор занимается оптимизацией производительности Chrome в компании Google — прим. пер.

Летом 2017 года я боролся с проблемой производительности Windows. Завершение процессов происходило медленно, сериализованно и блокировало системную очередь ввода, что приводило к многократным подвисаниям курсора мыши при сборке Chrome. Основная причина заключалась в том, что при завершении процессов Windows тратила много времени на поиск объектов GDI, удерживая при этом критический раздел system-global user32. Я рассказывал об этом в статье «24-ядерный процессор, а я не могу сдвинуть курсор».

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

Но на самом деле баг не вернулся. Причина оказалась в изменении нашего кода.
Читать полностью »

Heisenbug 2018 Moscow: бесплатная онлайн-трансляция, вечеринка и многое другое - 1

Меньше недели осталось до конференции Heisenbug 2018 Moscow: она пройдет в «Славянской Рэдиссон» 6-7 декабря.

По традиции прямо на YouTube будет открыта бесплатная онлайн-трансляция первого зала (ссылка спрятана под катом). Между докладами будут вестись интервью с ключевыми спикерами конференции.

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

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

Заблуждения программистов об именах — с примерами - 1

В 2010 году Патрик Маккензи написал знаменитую статью «Заблуждения программистов об именах», перечислив 40 фактоидов, которые не всегда верны в отношении человеческих имён.

Думаете, программисты сели, подумали и изменили обработку имён в компьютерных системах? К сожалению, не совсем. Нас по-прежнему повсеместно просят заполнить онлайн-формы, которые предполагают обязательное наличие имени и фамилии (причём именно в таком порядке). Эти системы по-прежнему предполагают, что наши имена всегда можно записать символами алфавита, зачастую только ASCII.
Читать полностью »

Эклектика порой интересна. Чужие ошибки — это опыт, который может быть одновременно увлекательным и полезным. И, наконец, в последнее время произошло несколько космических аварий с совершенно айтишными причинами. Поэтому я решил выступить на конференции тестировщиков SQADays 24 с рассказом о том, чему тестировщики могут научиться у космонавтики. А поскольку другие активности этой же поездки для отдельной публикации мелковаты, под катом винегрет из:

  • Моего доклада SQADays
  • Лучших докладов SQADays-24
  • Видео реконструкции аварии «Союза МС-10» с инструкциями, как это повторить в домашних условиях
  • Немного фотографий павильона «Космос» на ВДНХ
  • Визит в пространство Laba.Space, где располагается проект 435nm

Космонавтика и тестирование: смешать, но не взбалтывать - 1
Иллюстрация Альфреда Келснера
Читать полностью »

Как я взломал одного хостинг провайдера - 1

С недавних пор мне стали приходить предложение проверить работу различных сервисов на предмет наличия ошибок и уязвимостей. И в таких предложениях я стараюсь работать на результат и получать максимальное удовольствие от процесса. Но результат последнего «проекта» меня мягко сказать шокировал.

Мне было предложено протестировать хостинг провайдера.
Читать полностью »

«Считалось, что код заменят UML-диаграммы, а тестировать станет не нужно»: интервью с Алексеем Баранцевым - 1

Алексей Баранцев, вероятно, один из самых известных людей в российском тестировании: его знают и по software-testing.ru, и по selenium2.ru, и по участию в Selenium WebDriver, и не только. При этом он ещё и один из наиболее опытных: в тестировании аж с 1994-го. И когда стало известно, что он выступит на нашей конференции Heisenbug с докладом «Заморочки в Selenium WebDriver», нам захотелось расспросить такого спикера. Начали с вопросов о том, чем тестирование в 90-х отличалось от сегодняшнего, а затем перешли к современным реалиям.
Читать полностью »

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

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

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

Привет! Меня зовут Егор Даниленко. Я занимаюсь разработкой цифровой платформы корпоративного интернет-банка Сбербанк Бизнес Онлайн, и сегодня я хочу рассказать вам о процедуре CI разработки, принятой у нас.
Читать полностью »


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