Что такое описательное программирование (Programmatic Description) в QTP - PullRequest
3 голосов
/ 19 марта 2010

Что такое описательное программирование в QTP?

Ответы [ 16 ]

8 голосов
/ 19 марта 2010

Создание теста без использования репозитория объектов называется описательным программированием, поскольку вы описываете объекты как часть сценария.

например.

Browser("title:=Google").Page("title:=Google").Link("text:=Advanced Search").Click

Обратите внимание на := в именах тестовых объектов, это не смайлик, это означает, что свойство title имеет значение Google (как регулярное выражение).

Вы также можете использовать объект Description через Description.Create.

Подробнее см. здесь .

2 голосов
/ 21 июня 2010

Описательное программирование используется, когда Вы хотите выполнить операцию на объект, которого нет в хранилище объектов.

Установка значения текстового поля

Browser(“Browser”).Page(“Page”).WebEdit(“Name:=textbox_name”,”html tag:=INPUT”).set “My New value”


Подробнее
Проверьте эту обширную статью о теме
http://www.learnqtp.com/descriptive-programming-simplified/

2 голосов
/ 19 марта 2010

Описательное программирование пишет qtp scpriting без какого-либо хранилища объектов

1 голос
/ 05 июня 2013

Описательное программирование используется во многих сценариях, таких как -> Когда QTP не может идентифицировать объекты по значению свойств, хранящемуся в репозитории объектов. -> Когда пользователь не хочет использовать хранилище объектов или обходить его. -> Когда пользователь хочет написать фрагмент кода, который может работать на более чем одном веб-сайте. Например, когда мы хотим напечатать название всей ссылки в Google или Yahoo, мы можем использовать один и тот же фрагмент кода, используя значение общего свойства

Используется двумя способами 1. Статическое описательное программирование Здесь мы используем свойства и значения непосредственно в тестовом скрипте для доступа к объекту. Например, Браузер ( "micClass: = .....") Page ( "micClass: = ...").. Ссылка ( "micClass: = ...")

Note: We can start Descriptive programming at any time, but once started we can not use Object Repository till the line is finished.
  1. Динамическое описательное программирование Здесь мы создаем объект описания, а затем оперируем этим. Например, Установить objTest = Описание. Создать objTest ("micClass"). Value = "Link" objTest ("name"). value = "Нажмите здесь"

С уважением Dheeraj

Mindfire Solutions, Индия

0 голосов
/ 18 июля 2017

Думайте об этом как о поиске местоположения (например, о поиске объекта), хранилище объектов работает как приложение карты (например, карта Google), вам просто нужно указать записанное местоположение, и оно найдет его для вас.

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

У обоих есть свои плюсы и минусы.Скажем, если ваш телефон мертв или сети нет, Google maps (хранилище объектов) больше не будет работать для вас.Вы должны пойти с родным путем.

0 голосов
/ 11 сентября 2015

Простыми словами мы можем сказать Описание объекта с помощью кода вместо хранилища объектов.

Пример кода

Browser("title:=Google").Page("title:=Google").Link("text:=Advanced Search").Click

Объектный код

Browser("Google").Page("Google").Link("Advanced Search").Click

И тебе нужен объект для всех

0 голосов
/ 02 июля 2015

Помимо всего вышеперечисленного, я бы сказал, что это лучший и самый легкий способ работы с QTP, vbscript - это самый простой из языков, и даже с учетом того, что вы собираетесь использовать только небольшую его часть.

Также повторно. Описательное программирование, есть статическое описательное программирование и динамическое описательное. Static создает переменную для каждого объекта, с которым вы хотите идентифицировать / взаимодействовать (т.е. dim myBUTTON), а затем дает описание этой фактической кнопки для переменной.

Это хорошо и функционально, но, как указал Артем выше, версия Dynamic (которую он показывает вам в совершенном коде) намного удобнее в использовании и удобна, а также лучше выглядит с точки зрения поддержания вашего кода более аккуратным. Вы создаете один объект описания и непрерывно переопределяете его для различных ваших потребностей, поэтому (используя соглашение об именовании Artems) oDesc может стать кнопкой, которую вы нажимаете, ссылкой, которую вы нажимаете, и вы можете продолжать переопределять ее, когда переходите вниз код (путем предоставления тех же свойств / значений для этого объекта). Это более аккуратно, и у вас нет миллиона имен переменных, летающих повсюду, так что это более понятно. Динамическое описательное программирование! В этом есть некоторые тонкости и проблемы при стрельбе в зависимости от того, какие значения вы передаете своему объекту, так что не стесняйтесь обращаться ко мне в любое время, Y.

0 голосов
/ 15 октября 2014

Идентификация объектов на вашей странице без репозитория объектов со специальным свойством Наиболее часто используется для описательных объектов, когда у вас есть несколько объектов на одной и той же странице, например, например. HTML ID и вам нужно нажать на все это ... вы можете вернуть все объекты и сделать цикл, чтобы щелкнуть по объекту, который вы идентифицируете в сценарии объекта с его свойствами (свойствами)

0 голосов
/ 18 сентября 2014

Описательное программирование используется для выполнения операций над объектом, которого у нас нет в qtp. Используется [Свойство -> значение]. Пожалуйста, обратитесь по ссылке ниже: -

Упрощенное описательное программирование

0 голосов
/ 09 сентября 2014

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

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

...