QTP: Как вернуть несколько значений из функции

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

Например:

function sample_function(arg1,arg2)
    ''#Some code.................

    passenger = list1(0)
    name1 = list1(1)
    age1 = list1(2)
    seatNumber = list1(3)
    ''#This is an Incomplete function...    
end function sample_function

Здесь эта функция с именем sample_function имеет 2 аргумента с именем arg1, arg2. Когда я вызываю эту функцию в моем скрипте драйвера, как value = sample_function (2, Name_person), эта функция должна возвращать мне значения passenger, name1, age1, seatNumber.

Как мне этого добиться?

EDIT (LB): QTP использует VBScript для указания процедур тестирования, поэтому я переназначил это на VBScript, VB, потому что решение, вероятно, находится в VBScript.

9
задан Henk Holterman 1 May 2012 в 10:30
поделиться

3 ответа

Вы можете создать новый тип данных и добавить в него все необходимые элементы. Затем верните этот новый тип данных из своей функции.

1
ответ дан 4 December 2019 в 08:14
поделиться

Простым решением было бы вернуть массив:

function foo()
 foo=array("Hello","World")
end function

x=foo()

MsgBox x(0)
MsgBox x(1)

Если вам случится использовать один и тот же пакет значений чаще, чем один раз, то, возможно, стоит сделать его определяемым пользователем классом:

class User
 public name
 public seat
end class 

function bar()
 dim r 
 set r = new User
 r.name="J.R.User"
 r.seat="10"
 set bar=r
end function

set x=bar()

MsgBox x.name
MsgBox x.seat
23
ответ дан 4 December 2019 в 08:14
поделиться

В VBScript все параметры функции являются параметрами ввода / вывода (также называемыми параметрами ByRef). Таким образом, вы можете вернуть свои данные, просто используя параметры функции. Пример:

Function Test(a, b, c)
   a = 1
   b = 2
   c = 3
End Function

Test x, y, z
MsgBox x  ' Shows 1
MsgBox y  ' Shows 2
MsgBox z  ' Shows 3
3
ответ дан 4 December 2019 в 08:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: