Форум на Kuban.ru (http://forums.kuban.ru/)
-   Разработка программ (http://forums.kuban.ru/f1024/)
-   -   Автоматическое тестирование Web-интерфейса вопросы (http://forums.kuban.ru/f1024/avtomaticheskoe_testirovanie_web-interfejsa_voprosy-4339553.html)

NTFS_ 12.06.2013 09:35

Автоматическое тестирование Web-интерфейса вопросы
 
День добрый.

Озаботился разработкой тестов для web-панели управления проектом. Есть много решений, но все немного не то.

Мне что нужно? Написать тестовый код, который позволяет проверить, что после нажатия в web-интерфейсе кнопки "Старт" конкретный серверный объект изменит свое свойство Started с false на true.

То есть (в условном коде):

AssignFalse(MyServerObj.Started,'test1') ;
DoPressWebButtonByName('Старт') ;
AssignTrue(MyServerObj.Started,'test2') ;

(про асинхронность, таймауты и прочее пока не надо - мне важен принцип).

Зачем мне это нужно? Панель управления соединена с достаточно сложной серверной системой - и мне чертовски важно знать, все ли команды, переданные с веб-морды, доходят до объектов стороны сервера.

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

Спасибо.

ELEA 12.06.2013 21:00

Я к сожалению не понял ничего. Ты хочешь софтинку, которая сама отправит WEBзапрос и получит какойто WEBответ? Или чтобы софтинка сэмулировала клик мышкои и через время проверила ответную страничку?
Или чтото еще? Или я вообще не в том контексте думаю?

NTFS_ 12.06.2013 21:19

Не совсем так. Мне интересно, чтобы софтинка "одной рукой" рулила броузером, посылая нажатия на кнопки, а другой - проверяла состояние сервера, например, через какую-то .dll или .so

Проблема в том, что управление броузером - это его адресное пространство (например, js-скрипт), а связь с сервером - это уже процесс внутри сервера. Мне же нужны эти запросы последовательно: проверка состояния серверного объекта - щелчкок кнопкой в броузере - снова проверка сервера.

Обычных веб-тестировщиков навалом, даже в студии что-то подобное есть.

ELEA 13.06.2013 10:18

т.е. нужно 3 компоненты.
1) давилка кнопки
2) агент на сервере
3) управленец, который дает запрос "давилке кнопки", а через время просит отчет у агента на сервере.

Не, я таких готовых не знаю... Надо самому ваять. Ну или гуглить упорно...

NTFS_ 13.06.2013 16:07

3-ELEA > Да я и так почти все сам ваяю :-) сначала сделал тестовый фреймворк для Delphi, а спустя год узнал про DUnit. Абыдно, да?

ELEA 13.06.2013 21:19

4-NTFS_ > как минимум знакомо...

wayerr 13.06.2013 23:02

>, а другой - проверяла состояние сервера, например, через какую-то .dll или .so


в этом и трабл, еслиб связь была через REST-like RPC то упомянутый вопрос сводился бы к парочке немудреных скриптов или чегото вроде [url]http://en.wikipedia.org/wiki/HttpUnit[/url] , также можно было бы прикручивать нагрузочные тесты типа JMeter, а при любви к dll-кам только велосипеды, только хардкор.

NTFS_ 13.06.2013 23:51

6-wayerr > Ну, мне посоветовали Selenium, все классно, но мои любимые cgi на FPC не поддерживает (с чего бы это), так что придется приделать к Selenium свой велосипед, с блэкджэком и [filolog]шлюхами[/filolog].

NTFS_ 13.06.2013 23:53

6-wayerr > А вот за HttpUnit спасибо... чувствую, я где-то близко к цели

wayerr 14.06.2013 20:13

> cgi на FPC

Мусье знает толк в извращениях.

NTFS_ 15.06.2013 10:31

9-wayerr >
[I]Мусье знает толк в извращениях. [/I]

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

toly84 18.06.2013 10:40

Посмотри Selenuim WebDriver


Текущее время: 16:23. Часовой пояс GMT +3.