Pull to refresh
25
0.2
alexei lupan @astenix

QA дед

Send message

Отладка тест-плана JMeter

Reading time6 min
Views50K
В предыдущем посте про JMeter я описывал создание примитивного нагрузочного теста. При разработке более сложных сценариев не обойтись без отладки. К сожалению, в JMeter эта техника не совсем очевидна. Ниже на несложном примере покажу несколько приемов отладки тест-плана. Заодно продемонстрирую использование таких элементов, как HTTP Request Defaults, Regular Expression Extractor, If Controller и некоторых других.

final test plan

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

Как легально получать деньги из-за пределов России

Reading time5 min
Views202K
Дано: заказчик за рубежом, желающий работать с Вами и платить вам евро или доллары.
Найти: оптимальный способ организовать работу с ним, чтобы платить налоги и спать спокойно.

Сразу скажу, что получение денег на пластиковую карту без уплаты налогов может вылиться в серьезные проблемы (про ответственность написано в конце топика). Объяснения, что деньги «от бабушки внучку на мороженное» при суммах больше 10К$ в год уже не прокатывают, особенно если в реквизитах «бабушки» будет стоять что-то вроде «GMBH Star Development» Вероятность того, что возьмут за задницу достаточно высокая и поэтому лучше не рисковать и делать все по Закону, тем более, что ничего сложного в этом нет
Читать дальше →

Гениальный копирайтер Боря или 10 заповедей работы с удалённым сотрудником

Reading time7 min
Views32K
Здравствуйте, многоуважаемые хабрачеловеки!

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



(Флеш-приложение 1. Интровертный мир одного из наших сотрудников. Можно кликнуть и поиграть, а потом продолжить чтение. Можно и наоборот — сначала прочитать, а потом поиграть.)

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

Мы в достаточной степени успешны. Однако на первое место мы всегда ставим не работу с клиентом даже, а внимание к сотруднику. Можно потерять клиента, но потерять сотрудника, пусть самого незначительного, человека, который работает с настойчивостью гика, нельзя, никак нельзя. Скажем так: если вдруг клиент попросит нас расстаться с сотрудником, который ему не нравится (а такие прецеденты были), мы предпочтём расстаться с клиентом, сколь много бы он ни башлял.

Подобно Гуглу или Дримуорксу наша контора — паутина, в центре которой, в московском офисе, сидит инфернальное руководство, а злодейские паучата – по краям, в Питере или Краснодаре. Суть такого хитрого аутстаффинга не в том, что провинциалам можно меньше платить. Суть в том, что это позволяет отобрать наиболее ценные, наиболее талантливые кадры.

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

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

Как нанять программиста с закрытыми глазами

Reading time5 min
Views8.1K

Найти хорошего программиста – это большая проблема. За свою жизнь мы наняли около 50 программистов исходя из интервью и только интервью. Редкий случай был успехом.Проблемы начинались оттуда, откуда их не ждешь.

  • Один не мылся и вонял так, что в комнату не зайти. Я угрожал поставить вытяжку и вычесть из зарплаты; это помогало на один душ, не больше.
  • Другой пил запоем и врал, что отравился брюшками семги.
  • И все, почти все затягивали сроки.


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




Поиск кандидатов



Очередного программиста я нашел так: отобрал несколько откликов на HeadHunter.ru и попросил их посмотреть, чем они займутся. Вот что я написал:

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

uTorrent на страже online просмотра

Reading time2 min
Views96K


Порой есть необходимость узнать качество видеоматериала, еще до его скачивания(сэмплы есть не всегда, да и скриншот не дает реальной картины) или просто быстро начать просмотр серии сериала, фильма, которые вдруг захотелось посмотреть в данный момент. В любимом клиенте utorrent, функция stream добавленная в alpha версии работает отвратительно. Для TorrentStream необходимо устанавливать специальный софт и смотреть в браузере. А как быть тем, кто любит «маленький» utorrent, хочет начать смотреть видео уже в момент его скачивания, не хочет загружать ничего лишнего и сторонник просмотра в полноценном видеоплеере?
Выход есть...

Код, который приятно читать

Reading time2 min
Views3.7K

Хороший код


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

Основное правило

Я считаю, что читаемым является код, в который можно не вчитываться.
То есть, пары-тройки строк дожно быть достаточно, чтобы сказать, что делает класс или метод. Ещё пары-тройки — чтобы примерно сказать, как он это делает.

Прочие замечания

Я заметил, что есть ещё несколько довольно общих правил, которые делают код симпатичнее.
Читать дальше →

Простой нагрузочный тест с Apache JMeter

Reading time7 min
Views288K
По моим наблюдениям, разработчики довольно редко делают нагрузочное тестирование сайтов и веб-приложений. И бывает так, что выставят проект в Интернет, а тут вдруг посетители начнут ходить (хабраэффект, к примеру, случился), и сайт в самый подходящий момент ложится или начинает не по-детски тормозить.

Почему бы не избежать этих неприятностей, прогнав нагрузочный тест?

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

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

PDF-Shuffler: Жонглируем PDF файлами

Reading time1 min
Views12K
На днях мне нужно было для сайта подготовить один PDF файлик. Да вот незадача, надо было собрать его из 3 PDF файлов, а у одного из них еще и удалить страницу в середине.

И решение проблемы нашлось!

Фотографируем гаджеты для обзора или сайта по-быстрому

Reading time3 min
Views13K
Топики с обзорами всевозможных гаджетов появляются на хабре достаточно часто и возможно, мой рассказ покажется полезным как раз для такого случая – сделать фотографию гаджета для обзора. Здесь я расскажу как быстро сфотографировать небольшой гаджет с максимально возможным качеством. В крайнем случае, это можно сделать даже камерой телефона, я так и поступлю. Поскольку технические средства в этом топике ограничены, практически любое улучшение используемой техники приведёт к повышению качества результата.
Читать дальше →

Mantis + Subversion у себя на компьютере с Windows XP. Пошаговая инструкция для удобной организации работы с кодом

Reading time6 min
Views5.7K

Исторически сложилось, что багтрекер в нашей команде – это Mantis. Для работы над ошибками очень хорошая и простая в обучении система. Буквально садись и работай. Но для удобной организации работы ей явно не хватает связки с Subversion. В связке Subversion+Mantis помогают организовать работу с кодом небольшой команды программистов. Более подробно про организацию работы у нас я описал в прошлой статье.
А сейчас давайте поговорим, как установить Subversion у себя на компьютере и связать его с Mantis на сервере.
Читать дальше →

Свобода или страх. Делайте свой выбор

Reading time3 min
Views2.6K
Сегодня на хабре для меня получился занимательный микс из статей — волчьи будни и эффект бабочки. Вроде разные такие статьи, а обе зацепили, заставили думать. Причем поначалу я не могла собрать мысли воедино и понять, что же объединяет эти казалось бы разные статьи. И через некоторое время меня осенило – свобода самовыражения.

Это очень важный фактор в жизни каждого человека. Именно этого не хватает у нас – мы всегда чего-то боимся – того, что денег не хватит, что друзья не поддержат, что общество осудит. Мы живем по законам, которые задает большинство, и не можем стать самими собой, потому что боимся этой массы – этого большинства.
Читать дальше →

BullDoc — система разработки документации

Reading time3 min
Views2.2K

Давайте знакомиться


Каждая разработка, если она хоть немного поэтичней, чем печать «hello world», требует документации. И как-то так получалось, что я начинал писать документацию и все время наталкивался на то, что мне это неудобно:


Документация в MS Word (Open Office) не имеет подсветки кода, держит все в одном длинном документе, его не положишь в систему контроля версий для отслеживания изменений. Такой документ невозможно без лишних трудностей сохранить в html-коде, который будет размещён на сайте.


Microsoft HTML Help Compiler позволяет все хранить в тексте, но не имеет подсветки синтаксиса, документ нельзя собрать в связанные html-страницы для выкладывания на сайт без active-x компонента

Формат Docbook тоже близок к желаемому, но XSLT трансформации сложны, подсветка синтаксиса — хоть и решаемая, но проблема.

PHPDocumentator нацелен на написание документации в виде комментариев к коду. Да, он поддерживает подключение нескольких страниц чистой документации к тому, что получилось (кажется это называется там термином тюториал). BullDoc направлен на написание документации в чистом виде — в виде книжки. Опрятной нормальной книжки с главами, разделами, оглавлением и индексом. То, что получается на выходе из PHPDoc это рабочий инструмент, никак не документация для конечного юзера.

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

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

600 книг от издательства O’Reilly доступны к прочтению на сайте лейпцигского стартапа PaperC

Reading time1 min
Views1.5K
В недавнем анонсе создателей стартапа PaperC сообщается, что 600 книг от известного издательства O’Reilly доступны к прочтению на их сайте. Таким образом общее количество доступной литературы перевалило за 3000 наименований, причем многие из них уже и так были из IT-области.

Большинство книг предоставляются на английском языке, реже — на немецком.



Коротко о стартапе

Управляем голосом или правильный посыл

Reading time3 min
Views36K
Продолжаю маленькими порциями выдавать то, что знаю про скрытые резервы каждого человека.

Часто сталкиваюсь с тем, что люди не умеют управлять голосом. Даже те, кто публично выступает. Выглядит это со стороны довольно уныло: человек со сцены (из-за круглого стола переговоров, в совещательной комнате, в классе) в лучшем случае говорит кому-то одному, близкосидящему, либо вообще в никуда. От этого всем остальным становится неуютно. Они чувствуют себя лишними.

Мало того, говорящий может реально напрягаться, даже почти кричать, а все равно сзади его могут не услышать. От чего это происходит?

Как правило, из-за неумения банально управлять своими связками и глоткой (гусары!) Есть 2 типичные ошибки:

1. Стараясь сказать громко, чтобы все услышали, человек сильно напрягает связки. А что такое связки? Правильно, мышцы, которые буквально сжимают горло! Чтож мы имеем? Сильное напряжение легких, глотки, рта и… сдавленный, визгливый голос. Красиво, правда?

2. Человек старается говорить громко, но все равно посылает звук себе под нос! Как будто надо оглушить какого-то рядомсидящего слушателя. И всем как-то неловко.

Что же с этим можно сделать?
Читать дальше →

Программирование: Практики которые я возьму с собой

Reading time3 min
Views4.3K
Я имею довольно небольшой опыт работы в сфере разработки программного обеспечения (всего 6 лет), но я уже накопил ряд полезных и правильных практик (по моему скромному мнению), которые можно использовать при создании программного обеспечения.

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

TDD для начинающих. Ответы на популярные вопросы

Reading time8 min
Views51K
Исходники проекта написанного с помощью TDD. Visual Studio 2008/C#
Для написания тестов использована библиотека xUnit, для создания mock-объектов – Moq.




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

Мне задают много вопросов про TDD. Из этих вопрсов я выбрал ключевые и написал на них ответы. Сами вопросы вы можете найти в тексте, они выделены курсивом.
Читать дальше →

Ограничение доступа в интернет для приложений в Linux

Reading time2 min
Views28K
Иногда бывает необходимо запустить программу, предварительно заблокировав для неё доступ в интернет. Существует довольно простой трюк для решения этой задачи.

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

Шаг 1. Создаём группу-маркер и добавляем себя в неё


Создаём группу (В нашем случае группа будет называться noinet):
sudo groupadd noinet

Добавляем в неё текущего пользователя:
sudo gpasswd -a `id -un` noinet
Читать дальше →

Закачка файлов с depositfiles.com из консоли

Reading time1 min
Views5.5K
Пост не мой — просто попросили закинуть. Если понравилось, то почта автора для инвайта: jeka.eee.12@gmail.com. Уже получено — спасибо!

Функция для скриптов на bash, предназначенная для автоматизации скачивания файлов с файлообменника Depositefiles.com:
Читать дальше →

Распространенные заблуждения про банковские карточки

Reading time5 min
Views160K
Работая долгое время области банковского ПО, а в частности по всяким электронным платежам, вместе с коллегами я составил мини-ЧАВО на тему банковских пластиковых карт. Многие вопросы очевидны, а некоторые могут быть весьма туманными. В России бизнес пластиковых карт набирает обороты, что приятно, и лучше быть подкованным по «матчасти».

Итак, 10 распространенных заблуждений.
Далее...

Bash's dead, baby*. Viva zsh

Reading time5 min
Views16K
Позволю себе поднять упавшее знамя, оставшееся после предыдущих ораторов и продолжить благое дело продвижения zsh в массы. Надеюсь, после прочтения топика вы тоже смените старый добрый, но, как по мне, так застрявший в прошлом, bash на более удобный и продвинутый zsh.
Чтобы не быть голословным, попробуем рассмотреть это дело в контексте абсолютно субъективного и предвзятого сравнения bash vs. zsh.
Покажите

Information

Rating
3,089-th
Location
Кишинев, Молдова, Молдова
Date of birth
Registered
Activity

Specialization

Quality Assurance Analyst, Тренер
Intern
Linux