MyWackoSite: NsuTs/Вам запрещён доступDocumentation/devguide/testing ...

Home Page | Каталог | Изменения | НовыеКомментарии | Пользователи | Регистрация | Вход:  Пароль:  
Это старая версия NsuTs/Documentation/devguide/testing за 2011-09-16 21:10:25..

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

Описание тестов

Для взаимодействия с элементами web-интерфейса системы тестирования используются классы страниц suite_new/Nsuts/Page, инкапсулирующие функции взаимодействия со страницами системы при помощи Selenium API (Perl WWW::Selenium).
В данных классах страниц используются специальные функции waitForElementPresent, waitForTextPresent и waitForPageToLoad, написанные с учетом более удобного логирования и устойчивости к ошибкам, связанным с timeout'ми.
Каждый запрос страницы и ввод данных в пользовательские формы должен предваряться этими функциями.

Все тесты системы NSUts реализуются при помощи тестовых классов, содержащиеся в директории suite_new/Nsuts/Test.
Каждый тестовый класс должен содержать метод runTests для начальной инициализации драйвера Selenium.
Начальная инициализация драйвера Selenium, а также другие сервисные функции реализованы в специальных модулях из директории suite_new/Nsuts/Util.
Последовательность тестовых шагов реализуется посредством создания в методе runTests экземпляров классов страниц из suite_new/Nsuts/Page и вызовов соответствующих методов данных объектов.

Запуск тестов осуществляется следующим образом:


TODO:

Функциональные Selenium тесты

Для запуска тестов необходимо:
1. Perl (Active Perl?)
2. Java
3. Скачать файлы Selenium RC http://seleniumhq.org/download/
4. подложить в папку Perl lib из Selenium RC (сейчас лежит в \\swsoft\transfer)
5. сделать checkout тестов из svn: svn+ssh://swsoft.nsu.ru/home2/svn/olympic/trunk/tests
6. запустить selenium-server-1.0.3\run_selenium_server.pl
Запустится окно консоли, куда во время запуска тестов будет писаться лог тестов.
7. изменить конфиг файл test_suite.cfg
8. запустить suite_new\run_all_tests.pl
(Это можно сделать, например, в Notepad++, скачав дополнительно плагин Npp Exec?
и прописав путь к Perl подробнее )

Upd: добавлен новый скрипт run_nsuts_tests.pl, оптимизирующий запуск автоматических Selenium тестов.
Запуск скрипта:

После каждого выполненного теста запускается сервис nsuts_db_service для переинициализации созданной тестовой БД.
Адрес скрипта nsuts_db_service прописывается в конфигурационном файле test_suite.cfg в параметре db_service_url.
Результатом работы скрипта является набор логов для каждого теста в директории log и результирующий отчет по всем тестам SUMMARY.txt в текущей директории.
Запуск тестов и обработка статистики выполняется через модуль Perl TAP::Harness (можно скачать с CPAN.org в случае его отсутствия в списке модулей интерпретатора Perl).

Блочные тесты

Нагрузочные тесты (Apache JMeter)

Установка JMeter
  1. Скачиваем архив с официального сайта: http://jakarta.apache.org/site/downloads/downloads_jmeter.cgi
  2. Извлекаем архив, запускаем файл bin/jmeter.bat
Запуск тестов JMeter
  1. Настраиваем базовые параметры теста (Thread Group):
    • Number of Threads (users) – количество виртуальных пользователей (потоков)
    • Ramp-Up Period (in seconds) – общее время равномерного распределения старта потоков
  2. Добавляем HTTP Cookie Manager – работа с сессиями через cookie
  3. Создаем сценарий теста при помощи элемента HTTP Proxy Server:
    • добавляем элемент HTTP Proxy Server в Work Bench (Work Bench -> Add -> Non-Test Elements -> HTTP Proxy Server)
    • добавляем элемент Recording Controller для записи последовательности действий теста (Thread Group -> Add -> Logic Controller -> Recording Controller)
    • запускаем прокси сервер на свободном порту (по умолчанию 8080)
    • запускаем браузер с нужным прокси (по умолчанию: localhost, port 8080) и ходим по сайту
  4. Добавляем элементы мониторинга (Thread Group->Add->Listener):
    • View Results in Table
    • Graph Results
    • Aggregate Report
    • Summary Report
  5. Запуск теста: Run->Clear All && Run->Start.
Описание нагрузочных тестов системы NSUts
Тесты jmeter в svn-репозитории: svn+ssh://parallels.nsu.ru/home2/svn/olympic/trunk/tests/jmeter

Имеются следующие тесты:
Интересующие параметры

 
Файлов нет. [Показать файлы/форму]
Комментариев нет. [Показать комментарии/форму]