2013-04-02 3 views
2

В QTP говорится, что действия datatable являются локальными, а значения в нем могут быть доступны только для кода в конкретных действиях (например, значение в Data1, доступное для Action1, может быть доступно только скрипту Action1), и thats почему мы должны использовать глобальный листок.Получение значения из действия Datatable - QTP

Но я наткнулся ниже функции, которая будет принимать данные из другой таблицы действий, как если бы данные в таблице данных ДЕЙСТВИЙ1 и код в действии 2.

Может кто-нибудь мне calrify, если это возможно, и если да, то почему он обобщил, что значения в таблице данных действий являются локальными, и только значения в глобальном листе данных могут быть доступны из любого места?

DataTable.Getsheet("Action1").GetParameter(A).Value 

ответ

0

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

Например ..

RunAction "Action1 [Action1]", "1-1"

RunAction "Мотор2 [Мотор2]", "1-1"

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

1

Локальные и глобальные таблицы данных имеют отношение к текущему Действие по умолчанию. Вы можете оформить эти команды на первую строку вашего действия, и вы получите значение:

  • DataTable.GlobalSheet.Name
  • DataTable.LocalSheet.Name

Однако HP не не позволяет вам получить доступ к любому листу, который вы хотите: простое наличие функции ImportSheet подчеркивает тот факт, что вы можете использовать внешние таблицы, если этих двух таблиц недостаточно. Использование листа другого действия ничем не отличается от использования листа из импортированного файла excel.

enter image description here

У вас есть точка, и это имеет смысл, чтобы ограничить доступ к местным радиокомпонентам только владеющим действий, так же как, как местные переменными ограниченно только функции, которая определяла их. Но помните, что DataSheet Action является полностью независимым объектом. Его единственная безотзывная связь - с его родительским файлом excel. Вероятно, это причина, по которой HP не применяет такое ограничение.

0

Datatable ("columnname", "tabname") Будет доступен из любого программного обеспечения.

Пример: Struser = DataTable ("пользователь", "Глобальный") Равно Struser = DataTable ("пользователь", dtGlobalSheet)

Смежные вопросы