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

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

Тестируем все и вся

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

Тестерские конференции мира. Продолжение

Время на прочтение2 мин
Количество просмотров1.1K
Читать дальше →
Всего голосов 18: ↑17 и ↓1+16
Комментарии3

Тестерские конференции Европы или повод пошопиться?

Время на прочтение3 мин
Количество просмотров1.7K
Уже писали ранее о том многообразии городов захваченных тестерами в пределах нашей бывшей родины (ныне СНГ), которые появляются пачками после очередной SQA Days. А теперь я решил заглянуть дальше, за границы СНГ и спросить, а есть ли жизнь на Марсе? И решил значит поискать в интернете, а какие вообще «качественному» человеку качественные конференции стоит предложить?




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

Автоматический запуск unit-тестов для C

Время на прочтение3 мин
Количество просмотров12K
Я использую C для научных расчётов. А в этом случае, стоит крепко подумать, а надо ли вам вообще C?

Язык C нужен только в случае, если в ваших расчётах очень критична производительность или критичен доступ к железу. Во всех остальных случаях, я очень рекомендую высокоуровневые языки типа Ruby или Python (почти что стандарт языка для научных расчётов, очень много научных пакетов разного толка от математики до биологии) или, что лучше, сразу научные пакеты типа Sage (надстройка над python с возможностью использования символьных вычислений и очень много чего ещё, а также с возможностью подключения других математических пакетов, в случае, если возможностей Sage не хватает, прямо внутри Sage программы; о Sage, кстати, писали на хабре).

Для Python же, если производительность важна и вы не готовы вылизывать C-код до совершенства, есть Cython (авторы которого являются также авторами Sage), который компилирует почти питоновский код в C-код, достигая очень высоких показателей производительности.

Так что на этом этапе призываю вас ещё раз: подумайте, прежде чем использовать C для научных или иных расчётов! Иначе, поехали!

Итак, вы всё-таки решили использовать C. В этом случае надо организовать рабочую тестовую среду, а именно:

Читать дальше →
Всего голосов 13: ↑8 и ↓5+3
Комментарии5

Tsung: Нагрузочное тестирование Web-приложений

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

Tsung — это распределенная система нагрузочного тестирования, написанная на Erlang'е. Заявлена поддержка HTTP, WebDAV, SOAP, PostgreSQL, MySQL, LDAP and XMPP/Jabber. В этой статье я опишу как протестировать обычный web сайт на нагрузку.
Читать дальше
Всего голосов 81: ↑80 и ↓1+79
Комментарии68

Автоматическое тестирование в PHP

Время на прочтение4 мин
Количество просмотров14K
Работа по TDD имеет очевидные преимущества: у разработчика всегда есть чётко описанная в виде теста цель, и он сразу узнает, когда она будет достигнута.
Тем не менее, есть и некоторые издержки: необходимо постоянно запускать один и тот же тест при изменениях в нем или в соответствующем классе, чтобы не пропустить тот самый момент истины. Вроде бы не такая уж и большая проблема, но постоянное переключение в консоль для проверки сделанных изменений на работоспособность, да и вообще помнить о необходимости этих манипуляций — лишнее рассеивание внимания.

Далее о том, как все это дело автоматизировать.

Читать дальше →
Всего голосов 30: ↑27 и ↓3+24
Комментарии15

Ускоряем Selenium-тесты

Время на прочтение3 мин
Количество просмотров26K
Все, кто использует Selenium тесты в своём билде, знают, что это достаточно дорогое удовольствие, потому что очень медленно. Из-за этого многие не запускают билд полностью перед коммитами или, вообще, запускают билд только по ночам. Итак, делаем наши тесты быстрее.
Читать дальше →
Всего голосов 35: ↑34 и ↓1+33
Комментарии13

TDD на примере UrlBuilder

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

TDD на примере UrlBuilder


В этой статье я хотел бы на простом, но жизненном примере рассказать о применении техники разработки через тестирование. Главный плюс такого подхода, на который я хотел бы обратить внимание — в момент начала разработки мы уже знаем, что мы должны разработать, и имеем вполне конкретный критерий работоспособности кода.
Читать дальше →
Всего голосов 2: ↑2 и ↓0+2
Комментарии1

ReactOS: Операция PI

Время на прочтение1 мин
Количество просмотров2.3K
Продолжается полномасштабная подготовка знакового релиза 0.3.14 (0.PI) операционной системы ReactOS. В связи с чем разработчики обращаются к сообществу с просьбой принять участие в тестировании свежих билдов.

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

Что требует внимания тестеров:


I Работа на реальном железе

  • сетевые карты
  • USB мыши и клавиатуры
  • управление питанием — включение выключение через «пуск» и по аппаратной кнопке.

II Неподтвержденные баги

В багтрекере проекта накопилось серьёзное количество неподтверждённых или имеющих некорректное описание багов. Необходимо провести тестирование свежих билдов и по результатам подтвердить или опровергнуть соответствующие баги.

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

На закуску
Всего голосов 61: ↑56 и ↓5+51
Комментарии68

Автоматизация Flex-приложений при помощи Java + Selenium + FlexMonkium

Время на прочтение10 мин
Количество просмотров8K
В этом посте я опишу свои исследования, которые мне пришлось проделать, когда на проекте стал вопрос об автоматизации тестирования. Проект представляет собой веб-сайт, клиентская часть которого написана на Flex, а серверная — на Python(Django).

Выбор средств для автоматизации

Для начала рассмотрим путь от начала, который я прошел, прежде чем остановился на связке Java + Selenium + FlexMonkium. А это:

  • Selenium + Sfapi
  • Ranorex
  • FlexMonkey
  • Selenium + FlexMonkium

Читать дальше →
Всего голосов 21: ↑18 и ↓3+15
Комментарии7

Философия бага – описание ошибки

Время на прочтение3 мин
Количество просмотров5.6K
image Имея опыт работы в нескольких командах по тестированию ПО в различных проектах и компаниях, начиная от фриланса и заканчивая аутсорсинговыми и продуктовыми фирмами, я заметил такой факт, что в каждой команде отчет об ошибке пишется по своим традициям и стилям. При этом большинство тимлидов или ведущих QA-инженеров, которые эти традиции придумали, утверждают, что именно их стиль описания бага является наиболее правильным и максимально приближен к фен-шую. Нет, я не хочу сказать, что баг-репорты везде кардинально отличаются, нет, они приближены к стандартному виду с заголовком, шагами для воспроизведения, описанием ошибки и ожидаемым результатом, но от проекта к проекту имеют свой стиль. Например, подробность описания шагов воспроизведения (свое видение на эту тему я опишу в следующем посте), порядок расположения ожидаемого результата и описания ошибки и т.д.

Молодые специалисты, прейдя на первый проект в своей жизни, воспринимают все традиции по ведению тестовой документации и тестированию как эталон, так как у них нет опыта и им не с чем этот процесс сравнить. Взяв за основу какой-либо стиль дизайна отчета об ошибке, при смене места работы на собеседовании могут возникнуть споры при ответе на вопрос: «Расскажите нам про дизайн баг-репорта», т.к. у команды, в которой вы хотите работать стиль описания может отличаться. Здесь важным моментом является не угадать этот самый стиль, а озвучив свой и услышав в его адрес критику, уметь обосновать свою точку зрения.
Читать дальше →
Всего голосов 28: ↑25 и ↓3+22
Комментарии16

Использование Dummynet для эмуляции узкого канала под Windows

Время на прочтение1 мин
Количество просмотров5.4K
Иногда нужно протестировать работу клиентского приложения в сетевых условиях, приближенных к боевым. Что при разработке, что при выборе софта. Как правило, сервер рядом, а нужно оттестировать и на таком канале, и на таком. Как ни странно, удобного средства управления трафиком (traffic shaping) под Windows мне долго не удавалось найти. Из поисков запомнилось: кто-то советовал для тестовых целей купить модем. Можно поставить роутером машину на Linux и на ней рулить трафиком, но мне такой подход кажется слегка чрезмерным.
Оказывается, не меньше года в проекте Dummynet есть бинарники для Windows, которые позволяют легко и непринужденно управлять, как минимум, полосой канала (bandwidth) и задержкой (latency).
Читать дальше →
Всего голосов 36: ↑28 и ↓8+20
Комментарии10

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

24 – 25 октября
One Day Offer для AQA Engineer и Developers
Онлайн
25 октября
Конференция по росту продуктов EGC’24
МоскваОнлайн
26 октября
ProIT Network Fest
Санкт-Петербург
7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн
7 – 8 ноября
Конференция «Матемаркетинг»
МоскваОнлайн
15 – 16 ноября
IT-конференция Merge Skolkovo
Москва
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань

Эмуляция сетевых проблем с помощью WANem

Время на прочтение3 мин
Количество просмотров29K
Картинка для привлечения внимания Недавно один из заказчиков TestLab² пожелал узнать, как будет работать его инсталлятор (с закачкой всякого на лету) на разных каналах. Внезапно первые подходы показали, что нам везет и обычные edge, umts и wimax-каналы (не говоря о проводных) в нашей округе как-то уж очень хорошо работают.
Чтобы создать тяжелые условия мы нашли и применили специализированный инструмент WANem, о котором я расскажу под катом.
Читать дальше →
Всего голосов 46: ↑46 и ↓0+46
Комментарии20

Real-life unit tests

Время на прочтение1 мин
Количество просмотров6.7K
Часто мне приходилось слышать, что кто-то послушал лекцию или прочитал статью про юнит-тесты, вроде как всё понял; решил сам попробовать — и ничего не получилось.

Почему так получается?

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

В этом видео на живом примере показано, как писать юнит-тесты для кода с внешними зависимостями.

www.devclub.eu/2011/06/06/asolntsev-real-life-unit-tests

Слайды и пояснения:
Всего голосов 20: ↑17 и ↓3+14
Комментарии50

Типы багов: этимология и энтомология

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

Какие бывают баги


1. Немного этимологии и энтомологии
Давайте посмотрим попристальней на такое знакомое и (до боли?) родное слово БАГ. Происходит оно от английского слова Bug, означающего «насекомое». Есть еще много сторонних значений, в частности английское выражение «to go bugs» — сойти с ума, что легко кореллируется со вполне русским «тараканы в голове завелись». Также вспоминаются и «жучки на линии» (тоже, кстати, по-английски – bugs). И опять мы пришли к насекомым.
Читать дальше →
Всего голосов 49: ↑42 и ↓7+35
Комментарии18

Быстрое создание нагрузочных тестов на JMeter для web-сайтов

Время на прочтение5 мин
Количество просмотров151K
imageДля любого программного приложения, предназначенного для массового обслуживания пользователей, необходимо проводить нагрузочное тестирование на предмет его надежности и отказоустойчивости. А так как любой web-сайт — это по своей сути система массового обслуживания, то проверка его на отказоустойчивость всегда является неотъемлемой частью разработки. Существуют различные решения для проведения нагрузочного тестирования веб-приложений. Я не буду сейчас описывать их подробно, про некоторые из них есть упоминания здесь.

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

Для тех кто ни разу не использовал JMeter, рекомендую для начала почитать базовые обзоры, например, Простой нагрузочный тест с Apache JMeter. Когда я первый раз запустил данную программу, первая мысль была разобраться во всем методом «тыка», но как выяснилось это вообще нереально, и метод «тыка» неприменим к JMeter. Поэтому если хотите его использовать, то сразу открывайте мануал, поверьте, вам придется заглядывать туда очень часто, пока полностью не разберетесь, что и как. Я же здесь сейчас опишу самое очевидное и важное, а именно: как собственно создавать нагрузочные тесты. Если бы я в свое время сразу нашел подобную статью, то сэкономил бы без малого день на изучении этой софтины.
Читать дальше →
Всего голосов 74: ↑71 и ↓3+68
Комментарии35

Quality assurance management

Время на прочтение3 мин
Количество просмотров7.2K
Уважаемые читатели, прежде всего статья призвана посмотреть на то, чем мы все занимаемся каждый день, глазами разработки, глазами менеджмента и конечно же попытаться пересмотреть подход к традиционному ведению проектов, применимо на всех этапах тестирования.
Итак начнём.
Читать дальше →
Всего голосов 7: ↑6 и ↓1+5
Комментарии2

7 способов бюджетного обучения для тестировщиков

Время на прочтение4 мин
Количество просмотров93K
Если присмотреться к различным ИТ-профессиям, складывается ощущение, что «движухи» у тестировщиков больше, чем в любом другом направлении. Оно и понятно: отрасль молодая, незрелая, и уровень квалификации по сравнению с западным отстаёт.

При этом может показаться, что обучение — это сложно или дорого. Как бы не так! У тестировщиков есть масса возможностей учиться либо совсем недорого, либо вообще бесплатно! Сегодня я хочу поделиться новостями в мире обучения тестировщиков: надеюсь, каждый заинтересованный найдёт для себя что-то подходящее.
Читать дальше →
Всего голосов 45: ↑35 и ↓10+25
Комментарии8

Распараллеливание тестов или одна голова — хорошо, а две головы — лучше

Время на прочтение3 мин
Количество просмотров5.3K
В какой-то момент, если долго и усердно стараться сохранять покрытие тестами не меньше 80% кода, прогон полного комплекта тестов начнет занимать больше времени, чем уходит на перекур и на прочтение новых статей хабра. В свою очередь это приводит к тому, что полный комплект (suite) будет запускаться все реже и реже. Hudson начнет сообщать о сломанных билдах, а дальше сработает эффект разбитого окна и сломанный билд станет нормой.

Можно стараться запускать полный прогон перед каждым коммитом. Но затраты времени на кино в виде пробегающих по экрану фич cucumberа, а также выход из потока снизят эффективность разработчиков в разы.

В одном из наших проектов, в который согласно записям redmine вложено около 400 часов работы нашего коллектива ситуация с тестами до распараллеливания выглядела так (пару дней назад):
151 scenarios (151 passed)
3997 steps (3997 passed)
17m49.257s


18 минут!!!

За это время разработчик может сварить кофе, выкурить сигарету, сходит в туалет, ущипнуть за попу симпатичную коллегу и успеть посмотреть последние 3 минуты «матрицы» на экране. Если требовать от него чтобы полный прогон запускался перед каждым коммитом, то он только и будет делать что смотреть «матрицу» и щипать попы пить кофе.

Но анализ загрузки процессора при прогоне показывает, что в работе участвует только лишь одно ядро независимо от того, сколько их всего есть. Как говорит пословица, лучше день потерять, а потом за пять минут долететь. Порыскав в гугле мы нашли гем parallel_tests. Теперь мы не с такой завистью будем смотреть на erlang группу, которые могут спокойно распараллелить свои тесты на кластер арендованных облачных машин в Selectel.
Читать дальше →
Всего голосов 38: ↑38 и ↓0+38
Комментарии38