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

В EPAM стартовали Testing Practice Hiring Weeks

Время на прочтение 1 мин
Количество просмотров 3.2K
Блог компании EPAM Тестирование IT-систем *

Команда EPAM приглашает QA-инженеров c опытом работы в тестировании ПО от 1 года принять участие в Testing Practice Hiring Weeks с 15 по 28 ноября.

Впервые мы проводим Testing Practice Hiring Weeks сразу по трём направлениям: функциональное, автоматизированное и нагрузочное тестирование. Заполните регистрационную форму, пройдите интервью и получите оффер в течение 48 часов. Плюсом к быстрому офферу вы получите welcome-бонус в размере одного оклада.

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

Watir — Automated testing tool. Установка и первый скрипт.

Время на прочтение 3 мин
Количество просмотров 2.2K
Чулан
Watir – инструмент для автоматизированного тестирования web приложений на языке Ruby. Дальше я расскажу немного про Watir, как его установить и написать простой тестовый скрипт с его помощью.
Читать дальше →
Всего голосов 10: ↑8 и ↓2 +6
Комментарии 6

Тестирование веб-приложений при помощи mechanize

Время на прочтение 4 мин
Количество просмотров 11K
Python *
По следам хабратопика о Watir, автоматизированном иструменте тестирования для web приложений на языке Ruby, решил написать небольшую статью о подобном инструменте для языка Python. Речь пойдет о замечательной библиотеке mechanize. В отличие от Watir, mechanize не заточен под какую-либ о ОС, и является надстройкой над питоновскими библиотеками urllib и urllib2.

Сама библиотека является эмулятором браузера (без поддержки яваскрипта) и позволяет решать задачи любого класса (с огладкой на «отключенный» яваскрипт), в которых необходим применение браузера. В частности, я впервые вышел на эту библиотеку, когда нужно было скачать огромное количество научных статей с одного хранилища, требующего авторизации и хранящего документы PDF так, что без помощи вспомогательных инструментов скачивать приходилось исключительно по одному документу, чем я и занимался 2 часа, пока не вспомнил о PERL'овой библиотеке WWW::Mechanize (о возможностях которой читал некоторое время назад) и не набрал в гугле запрос WWW::Mechanize python, который и привел меня на сорсфорж.

Но довольно лирики.
Перейдем непосредственно к тестированию веб-приложения при помощи mechanize
Всего голосов 43: ↑41 и ↓2 +39
Комментарии 18

ЕГЭ глазами другого админа

Время на прочтение 3 мин
Количество просмотров 2.7K
Учебный процесс в IT
В этом посте описывается технология проверки ЕГЭ КРОК, наш же регион работал и продолжает работать по технологии ФЦТ (Федеральный центр тестирования). Основная волна ЕГЭ почти прошла, поэтому появилось время написать статейку про то, как все сейчас происходит. Давно уже хотел написать данную статью, но все как-то сомневался можно или нельзя, есть в этом что-то тайное или нету. Никаких документов запрещающих мне рассказывать про технологию нету, поэтому вот решился.

Читать дальше →
Всего голосов 59: ↑48 и ↓11 +37
Комментарии 107

FoneMonkey — первый инструмент для автоматизированного тестирования приложений под iPhone

Время на прочтение 2 мин
Количество просмотров 1.7K
Чулан
Привет, хабрасообщество.

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

Этот инструмент — приложение FoneMonkey от фирмы Gorilla Logic. Как ни странно, не нашла упоминаний о нем в рунете. Хотя приложение может оказаться очень и очень полезным для многих разработчиков/тестировщиков/etc.
далее..
Всего голосов 11: ↑10 и ↓1 +9
Комментарии 4

Автоматизация тестирования Windows-приложений с использованием .Net

Время на прочтение 11 мин
Количество просмотров 9.4K
.NET *

Автоматизация тестирования.


Тестирование – деятельность, выполняемая для оценки и улучшения качества программного обеспечения. Эта деятельность, в общем случае, базируется на обнаружении дефектов и проблем в программных системах.
Тестирование программных систем состоит из динамической верификации поведения программ на конечном (ограниченном) наборе тестов, выбранных соответствующим образом из обычно выполняемых действий прикладной области и обеспечивающих проверку соответствия ожидаемому поведению системы.
Основным подходом при тестировании программного обеспечения является тестирование «черного ящика». При данном подходе тестировщику неизвестно внутреннее устройство программы. Тестировщик взаимодействует с программой: вводит данные, нажимает кнопки, манипулирует другими визуальными компонентами и оценивает результаты.
Читать дальше →
Всего голосов 26: ↑16 и ↓10 +6
Комментарии 17

Автоматизация автоматизированного тестирования или Сила batch файлов

Время на прочтение 3 мин
Количество просмотров 3.2K
Чулан
— Почему не работаешь?
— Оно тестируется


Привет, Хабролюди.

Решил поделиться с вами своим опытом на тавтологическую тему – автоматизация автоматизированного тестирования. Как мы все знаем, чтобы не тратить время на регрессионные тесты умные тестировщики придумали когда-то использовать что-то кроме рук для прогона тестов.
Но захотелось автоматизации полного цикла, то есть от начала тестов до получения результатов. Итак…
image

Задача.


Автоматизировать циклическое тестирование приложения на разных операционных системах без участия человека.
Читать дальше →
Всего голосов 8: ↑7 и ↓1 +6
Комментарии 12

Результаты опроса: 301 ответ!

Время на прочтение 1 мин
Количество просмотров 4.2K
Тестирование IT-систем *
Для подготовки доклада к конференции SEF.BY мы провели онлайн-опрос на тему автоматизированного тестирования.Основная цель — определить уровень автоматизации тестирования и популярные инструменты. В этом топике делюсь результатами.
Огромное спасибо всем, кто принял участие!

Всего ответов — 301, но некоторые вопросы респонденты пропускали, поэтому количество ответов на каждый выпрос варьируется и указано на вставке в графике. Также, в тех случаях, когда наши предположения о популярных тулах не оправдались и ответ «Другое» занимал лидирующие позиции, мы указывали самые популярные варианты пользователей.


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

Автоматизированное тестирование мобильных приложений

Время на прочтение 6 мин
Количество просмотров 50K
Тестирование IT-систем *
Я провел настоящее исследование ситуации с автоматизированным тестированием интерфейса мобильных приложений. Речь идет не о тестировании модулей, а именно о тестировании интерфейса финального приложения. И, да, прямо на телефоне!

Зачем это нужно? В первую очередь, для гарантированного улучшения качества вашего ПО и улучшении настроения тестировщиков.

В чем идея? Чаще всего тестирование мобильных приложений осуществляется людьми: тестировщик берет приложение, iPhone 3, iPhone 4, iPad, если ему не повезло, то еще берет пару андроидов и GalaxyTab, и тестирует ваше приложение, 80% тестирования составляют примерно такие сценарии:
— запустить приложение, убедиться, что оно не падает;
— перейти на вкладку места, убедиться, что все пункты на месте;
— зайти в один из пунктов, убедиться, что описание на месте;


Такие тесты проводятся после каждого релиза и занимают очень много времени.

В свое время в вебе на помощь пришел Selenium, который позволил через специальный плагин к браузеру записывать действия тестировщика (все помнят макросы в MS Word?) и затем проигрывать их автоматически с проверкой результата. Можно запускать тесты даже на разных браузерах! Мы использовали это решение в своей компании, и оно, действительно, работает. Усилия на разработку тестов окупились.

По сравнению с вебом мобильная разработка еще очень молодая область, и я не ожидал увидеть хороших решений для автоматизированного тестирования интерфейсов. Оказалось, что их более чем достаточно. Хочу рассказать вам о некоторых из них.
Читать дальше →
Всего голосов 43: ↑41 и ↓2 +39
Комментарии 33

32-й выпуск подкаста «Откровенно про IT карьеризм». Беседа с Дмитрием Кальметьевым про QA и тестирование

Время на прочтение 1 мин
Количество просмотров 2.3K
Чулан
image
  • QA Senior
  • Во’IT’и
  • Престиж тестировщиков и программистов
  • Что нужно, чтобы стать тестировщиком
  • Главная задача тестирования
  • Автоматизирование тестирование = программирование
  • Имеет ли тестировщик влияние
  • Хороший тестировщик
  • Чем хорош Agile
  • Командировки, путешествия
Всего голосов 26: ↑12 и ↓14 -2
Комментарии 2

Specification By Example – BDD для прагматиков

Время на прочтение 11 мин
Количество просмотров 91K
Разработка веб-сайтов *

На Хабре довольно много упоминаний о BDD. К сожалению, статьи, которые я читал, так и не дали мне ответа на вопрос «а зачем мне все это нужно?» Ответ пришел с неожиданной стороны. Когда я всерьез занялся вопросом автоматизации приемочного тестирования, мне под руку попалась книга Gojko Adzic (не уверен в транскрипции, поэтому не стал переводить имя автора) Specification By Example.
Читая ее, я не уставал удивляться: каждая новая глава описывала шишки, которые я набивал на своем личном опыте, и предлагала решения аналогичные или лучшие, чем те, к которым я приходил сам методом проб и ошибок.

Эта статья – первая в цикле «BDD для прагматиков». В ней описаны ключевые элементы наиболее эффективного, на мой взгляд, процесса разработки коммерческого ПО в современных условиях. Два продолжения будут посвящены работе со SpecFlow и автоматизации приемочного тестирования.
Часть первая - живая документация
Всего голосов 34: ↑31 и ↓3 +28
Комментарии 32

Автоматизированное функциональное тестирование Windows приложений с использованием Ranorex

Время на прочтение 6 мин
Количество просмотров 30K
Тестирование IT-систем *.NET *
Из песочницы
В прошлом году в нашей компании появился не только Web, но и Windows клиент. Так как средства автоматизации тестирования, которыми мы пользовались для Web (например Selenium) в данной ситуации мы конечно использовать не могли, перед нами возникла необходимость поиска технологии автоматизированного функционального тестирования для Windows приложений.

Критерии нашего поиска были следующими:
  • Среда разработки функциональных тестов должна поддерживать как автоматическую запись тест-кейсов (для использования тестерами с минимальным опытом программирования), так и возможность писать отдельные части тестов вручную
  • Так как клиент разрабатывается на C#, хотелось бы и функциональные тесты писать либо на C#, либо на одном из .NET языков
  • Должна быть поддержка Data-Driven Testing
  • Для идентификации элементов пользовательского интерфейса желательно должен использоваться XPath
  • Код и все артефакты тестирования должны храниться в той же системе контроля версий, в которой хранится наш основной код (в нашем случае — Git)
  • Данная технология автоматизированного функционального тестирования должна быть легко встроена в нашу систему непрерывной интеграции (Jenkins)

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

Девять кругов автоматизированного тестирования

Время на прочтение 11 мин
Количество просмотров 62K
Разработка веб-сайтов *Тестирование IT-систем *


Я хочу рассказать о созданной нами системе автоматизированного тестирования. Система в моем понимании это не только код, но еще железо, процессы и люди.

Я отвечу на вопросы: Что тестируем? Кто этим занимается? Зачем это все происходит? Что у нас есть?
А затем расскажу как все работает: опишу круги тестирования — с первого по девятый.

Что?

Наш продукт — корпоративное web-приложение Service Desk, написано на java.

Кто?

Я — лид группы автоматизированного тестирования; программисты код которых тестируем; ручные тестировщики, рутину которых мы искореняем; менеджеры верящие, что если тесты прошли, то все не так уж и плохо.

Зачем?

Цель моей группы — уберечь продукт от регрессионной спирали смерти.
Задача группы — необнаружение дефектов максимумом интересных способов с минимальным количеством ручного труда.

Что у нас уже есть?

900 коротких и не очень сценариев использования приложения закодированых в тесты.
CI Jenkins на шести серверах, три СУБД, два семейства ОС и три браузера под которые пишем продукт.

Как это работает?


Читать дальше →
Всего голосов 40: ↑38 и ↓2 +36
Комментарии 41

Автоматизированное тестирование веб-приложения (MS Unit Testing Framework + Selenium WebDriver C#). Часть 1: Введение

Время на прочтение 4 мин
Количество просмотров 62K
Тестирование IT-систем *
Туториал
Recovery mode
Из песочницы
image

Введение

Всем Buenos Dias! В своей статье я хотел бы максимально лаконично и просто рассказать о том, как построить процесс автоматизированного тестирования web-приложения с нуля. Первым делом нужно правильно расставить приоритеты и выбрать приемлемое соотношение цена/качество. Сразу определимся — это будет не решение «на коленках» из зоопарка скриптов, которыми часто пользуются при ручном тестировании. В тоже время мы не будем тратить много усилий на проектирование нашего «фреймворка» для автоматизации. Наша цель — предоставить результаты своей бурной деятельности перед руководством в максимально короткие сроки, при этом система должна быть:
  • максимально простой, чтобы тесты могли писать даже специалисты по ручному тестированию
  • гибкой и расширяемой, поскольку мы не можем адекватно оценить весь объем работ на данном этапе
  • кроссплатформенной (Selenium WebDriver C# поддерживает Firefox, Chrome и IE)

В своем примере я буду успользовать .NET (Microsoft Unit Testing Framework) и Selenium WebDriver C#.
Читать дальше →
Всего голосов 25: ↑13 и ↓12 +1
Комментарии 15

Автоматизация тестирования Web-приложений

Время на прочтение 13 мин
Количество просмотров 102K
Разработка веб-сайтов *Тестирование IT-систем *.NET *
Туториал


Автоматизация тестирования – место встречи двух дисциплин: разработки и тестирования. Наверное поэтому, я отношу эту практику к сложным, но интересным.

Путем проб и ошибок мы пришли к следующему технологическому стеку:
  1. SpecFlow (опционально): DSL
  2. NUnit: тестовый фреймворк
  3. PageObject + PageElements: UI-абстракиця
  4. Контекст тестирования (информация о целевом окружении, пользователях системы)
  5. Selenium.WebDriver

Для запуска тестов по расписанию мы используем TFS 2012 и TeamCity.
В статье я опишу, как мы к этому пришли, типовые ошибки и пути их решения.
Читать дальше →
Всего голосов 39: ↑29 и ↓10 +19
Комментарии 21

Автоматизированное тестирование веб-приложения (MS Unit Testing Framework + Selenium WebDriver C#). Часть 2.1: Selenium API wrapper — Browser

Время на прочтение 6 мин
Количество просмотров 53K
Тестирование IT-систем *
Туториал
Selenium + C#
Введение

Снова здравствуйте! Представляю вам вторую часть статьи на тему автоматизированного тестирования веб-приложения на Selenium и C#. И если первая часть была из разряда «капитан очевидность», что вызвало негодование у читателей, то в этой части будет много кода. И так, зачем же писать обертку (wrapper) над Selenium API? На мой взгляд, пользователи могут столкнуться со следующими проблемами:
  • Интерфейс IWebDriver предоставляет довольно скудную функциональность в плане управления браузером. Поэтому все, что нам понадобится, придется писать самим
  • Описание элемента происходит одновременно с его поиском, т.е. на момент определения элемента он должен существовать в браузере. Очень часто решается путем написания getter для каждого элемента. Это накладно и плохо с точки зрения производительности
  • ISearchContext.FindElements принимает только один параметр типа OpenQA.Selenium.By, т.е. мы не можем искать сразу по нескольким свойствам. Обычно элемент ищется по первому критерию, а затем начинается отсеивание по остальным
  • Отсутствие многих, казалось бы, очевидных методов и свойств. Например: Exist, SetText, Select, SetCheck, InnerHtml и т.д. Вместо этого мы вынуждены довольствоваться Click, SendKeys и Text
  • Множество проблем на различных браузерах, например на Firefox и Chrome элемент кликается, а на IE — нет. Приходится писать special cases, «костыли»
  • Производительность. Да, драйвера работают не быстро. Впереди планеты всей как обычно IE — поиск может занимать секунды, иногда и десятки секунд

Ну что ж, много проблем — много решений. Я не хочу и не смогу изложить все и сразу в этой части. Длинный пост будет неинтересен, да и во время его написания энтузиазм резко падает) Поэтому эта часть имеет номер 2.1, в ней я покажу свой wrapper над браузером.
Читать дальше →
Всего голосов 29: ↑22 и ↓7 +15
Комментарии 3

Автоматизированное тестирование веб-приложения (MS Unit Testing Framework + Selenium WebDriver C#). Часть 2.2: Selenium API wrapper — WebElement

Время на прочтение 14 мин
Количество просмотров 43K
Тестирование IT-систем *
Туториал
Selenium + C#
Введение

Привет! В предыдущей части я описал основные проблемы, возникающие при работе с Selenium WebDriver, а так же привел пример обертки Browser. Вроде было не сложно, да?) Ну что ж, идем дальше. Надо разобраться с оставшимися проблемами:
  • Описание элемента происходит одновременно с его поиском, т.е. на момент определения элемента он должен существовать в браузере. Очень часто решается путем написания getter для каждого элемента. Это накладно и плохо с точки зрения производительности
  • ISearchContext.FindElements принимает только один параметр типа OpenQA.Selenium.By, т.е. мы не можем искать сразу по нескольким свойствам. Обычно элемент ищется по первому критерию, а затем начинается отсеивание по остальным
  • Отсутствие многих, казалось бы, очевидных методов и свойств. Например: Exist, SetText, Select, SetCheck, InnerHtml и т.д. Вместо этого мы вынуждены довольствоваться Click, SendKeys и Text
  • Множество проблем на различных браузерах, например на Firefox и Chrome элемент кликается, а на IE — нет. Приходится писать special cases, «костыли»
  • Производительность. Да, драйвера работают не быстро. Впереди планеты всей как обычно IE — поиск может занимать секунды, иногда и десятки секунд

В этой части мы будем писать wrapper WebElement, который целиком направлен на пользователя, т.е. на разработчиков автотестов. Признаюсь, что в момент его написания моя задача заключалась в создании «фреймворка», которым должны пользоваться инженеры по ручному тестированию для написания автотестов. Естественно предполагалось, что они имеют весьма скромные познания в программировании. Поэтому было совершенно не важно, сколько тонн кода будет в самом фреймворке и насколько он будет сложным внутри. Главное, чтобы снаружи он был прост как три буквы. Предупреждаю, будет много кода и мало картинок =)
Читать дальше →
Всего голосов 10: ↑9 и ↓1 +8
Комментарии 7

Автоматизированное тестирование веб-приложения (MS Unit Testing Framework + Selenium WebDriver C#). Часть 3: WebPages — описываем страницы

Время на прочтение 4 мин
Количество просмотров 24K
Тестирование IT-систем *
Туториал
WebPages
Введение

Приветствую всех, кому предыдущие статьи оказались полезными или были просто интересны. В прошлой части мы разобрались с Selenium WebDriver, и теперь, перед тем, как приступать к написанию тестов, мы должны описать страницы тестируемого приложения. В превью перечислю основные моменты
  • Описания всех страниц будут находиться в отдельном проекте, я назвал его Autotests.WebPages
  • Для каждой страницы будет создан отдельный класс, располагающийся в отдельном файле
  • Названия классов будут совпадать с названиями web-страниц, например описание страницы MySite/Home/Help будет храниться в классе с названием Help
  • Структура расположения этих файлов иерархическая и будет повторять дерево web-страниц. Например, страница Help будет иметь путь Root\Home\Help.cs относительно проекта и располагаться в пространстве имен (namespace) Autotests.WebPages.Root.Home
  • Для доступа к страницам будет разработан некоторый фасад (Facade), статический класс Pages
  • На практике страницы могут иметь много общего, поэтому вполне логично использовать наследование и вынесение некоторого функционала в отдельные хелперы
Читать дальше →
Всего голосов 13: ↑11 и ↓2 +9
Комментарии 4

Data Driven Tests & SpecFlow

Время на прочтение 3 мин
Количество просмотров 12K
Тестирование IT-систем *.NET *
Туториал
SpecFlow позволяет использовать встроенные таблицы для Data Driven сценариев. В своей практике я столкнулся с двумя проблемами при таком подходе:
  1. Иногда хочется, наоборот, получить авто-документацию из теста (например, тестирование API)
  2. Когда количество данных велико, лучше хранить их где-то отдельно (часто для Acceptance Test Case'ов используют Excel)

Покопавшись в Gesigner Generated коде я смог решить обе проблемы.

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