2012-02-09 2 views
2

Hy,Могу ли я проверить mxGraph ui с помощью HP Quick Test Professional?

Возможно ли протестировать mxGraphs через пользовательский интерфейс с помощью Quick Test Professional?

+0

Что такое "mxGraphs"? – David

+0

Библиотека визуализации JavaScript-графики для рабочего процесса, BPM, организационные диаграммы, UML, ER, сетевые диаграммы. http://www.jgraph.com/mxgraph.html – ALIENwoods

ответ

1

Предполагая, что вы имеете в виду mxGraphs (ссылка будет хорошо в следующий раз), как библиотека JavaScript для рисования диаграмм в WebBrowser:

Использование example приложения: Это возможно, но плохо. Все основные фигуры с левой стороны можно выбрать и иметь уникальные имена по свойству «alt» или «filename». Кнопки сверху распознаются QTP, но в результате генерируются общие имена объектов, вам придется возиться с атрибутами Class, если вы хотите использовать.

пример записи (на голландской культуры):

' left-side objects 
Browser("Diagramly - Draw Diagrams").Page("Diagramly - Draw Diagrams").Image("Container").Click 
Browser("Diagramly - Draw Diagrams").Page("Diagramly - Draw Diagrams").Image("Tekst").Click 

' changing the text on the Tekst object 
Browser("Diagramly - Draw Diagrams").Page("Diagramly - Draw Diagrams").WebEdit("WebEdit").Set "Change of Text" 

' More new objects 
Browser("Diagramly - Draw Diagrams").Page("Diagramly - Draw Diagrams").Image("Signal-in Arrow").Click 
Browser("Diagramly - Draw Diagrams").Page("Diagramly - Draw Diagrams").Image("Corporate Data Center").Click 

' Changing text on the Corporate Data Center object 
Browser("Diagramly - Draw Diagrams").Page("Diagramly - Draw Diagrams").WebEdit("WebEdit").Set "new text" 

' Top buttons 
Browser("Diagramly - Draw Diagrams").Page("Diagramly - Draw Diagrams").WebButton("WebButton").Click 
Browser("Diagramly - Draw Diagrams").Page("Diagramly - Draw Diagrams").Frame("Frame").WebButton("Annuleren").Click 
Browser("Diagramly - Draw Diagrams").Page("Diagramly - Draw Diagrams").WebButton("WebButton_2").Click 
Browser("Diagramly - Draw Diagrams").Page("Diagramly - Draw Diagrams").WebButton("WebButton_3").Click 

Полотно (область рисования) это другая история. Перетаскивание не легко автоматизируется, потому что оно не распознается nativly. Для этого вам нужно написать свои собственные функции.

Распознавание формы выполняется только по свойствам в innerHtml или в местах x и y. Если вы хотите сделать обширное создание и изменение/редактирование объектов, тогда вы можете создать библиотеку со всеми объектами, содержащимися в ней, в виде виртуальных объектов, помня о состоянии каждого объекта. Но будет непросто.

Проверено на WinXP SP3, IE8 и QTP10.00

TL; DR No. Некоторые компоненты могут быть захвачены QTP, но это будет утомительно и медленно. Это будет только стоить усилий, если вы хотите увидеть, есть ли все элементы на боковой панели и могут быть созданы.

+0

Thx, для вашего ответа мне кажется, что я должен решить протестировать его вручную или создать расширение библиотеки для QTP только для этого. – ALIENwoods

0

Это выполнимо. То, как мы достигаем чего-то подобного, заключалось в том, чтобы у вас было окно фиксированного размера и фиксированного разрешения. Чтобы проверить результаты, мы просто выполнили двоичный разброс по ожидаемому значению и снимку экрана (использовали браузер в полноэкранном режиме).

Не лучшее решение - но в большинстве случаев это работало.

+0

Да, запись на низком уровне, также кажется решением. Не лучшее, но решение :) – ALIENwoods