Тестирование ПО является критическим фактором для успешной разработки и внедрения бизнес-процессов
Одной из основных целей, как разработчиков и тестировщиков, так и руководства бизнеса, является ускорение процесса тестирования и отладки приложений, увеличение покрытия тестами и повышение результативности тестирования в разумных рамках ИТ бюджета.
По степени автоматизации различают:
- Ручное тестирование (manual testing) предполагает написание тест-кейсов командой тестировщиков и ручную проверку всех сценариев перед релизом (или выпуском софта).
- Автоматизированное тестирование (automated testing) предполагает использование программных средств для выполнения тестов и проверки результатов выполнения, что помогает сократить время тестирования и упростить его процесс.
По сравнению с ручным тестированием QA автоматизация позволяет:
- верифицировать корректность реализации всех бизнес-процессов в кратчайшие сроки
- увеличить тщательность и результативность тестирования, точность и повторяемость тестирования ведет к раннему обнаружению большинства дефектов
- совместимость
Примеры успешных проектов компании PNN с применением автоматизированного тестирования:
- Денежные переводы (отправка/выплата платежей по системам денежных переводов MoneyGram, Ria, Анелик и др.)
- Кредитные системы (создание и обработка кредитных заявок)
- Системы управления бюджетом (создание и обработка заявок)
- Другие проекты под заказ.
В ходе реализации данных проектов мы используем автоматизированное тестирование, с целью сократить время создания одних и тех же заявок в 2 – 3 раза. QA автоматизация играет ключевую роль в повышении скорости, эффективности и гибкости процесса тестирования ПО. В результате, дефекты обнаруживаются раньше, а устраняются быстрее.
При тестировании мы используем программы:
- Selenium WebDriver — инструмент автоматизации функционального и регрессионного тестирования. Данный инструмент использует драйверы, адаптированные под конкретный браузер, то есть Selenium WebDriver работает с каждым браузером по “индивидуальной программе”. Это повышает стабильность работы тестов (так как они затачиваются под конкретный браузер), тесты становится проще писать и поддерживать, увеличивается скорость их работы. Selenium WebDriver использует нативные команды — старается полностью эмитировать действия пользователя. На данный момент существуют следующие драйверы: FirefoxDriver; InternetExplorerDriver; ChromeDriver; AndriodDriver – мобильный браузер, IphoneDriver – мобильный браузер. Список поддерживаемых языков в Selenium WebDriver: C#, Java, Ruby, Phyton.
- Jakarta JMeter — инструмент для проведения нагрузочного тестирования, проверки нагрузки сервера при обращении большого количества пользователей.
В большинстве проектов, мы проводим тестирование пользовательского интерфейса (GUI testing), что подразумевает стимуляцию активности пользователей.
В процессе тестирования нами используются 2 основные подхода:
- Утилиты воспроизведения — инструмент Selenium IDE для Mozilla Firefox, который записывает действия пользователя, а затем воспроизводит их во время тестирования. В то же время, любое малое изменение тестируемого ПО требует перезаписи ручных тестов.
- Сценарии (Scripting) — форма программирования на языках (в основном на Java) , специально разработанных для автоматизации тестирования ПО, которая сокращает момент времени смены в коде при изменениях в веб-приложениях.
Компания PNN предлагает услуги по обеспечению качества и тестированию в следующих вариациях:
- как неотъемлемую составную часть производства программного обеспечения на заказ
- как независимую услугу по тестированию программного обеспечения заказчика
- как независимую услугу аудита качества исполнения программной системы
Предложенные методы покрывают как мануальное, так и автоматизированное тестирование. Наши специалисты выполняют анализ\тестирование функциональности веб-приложений, клиент-серверных и встроенных систем разработанных на таких языках как: Java, C#, C++.