UFT VBS Две функции с одинаковым именем, как указать, какая из них

У меня есть функция DetermineTree() в библиотеке функций с именем Explorer.vbs и другая функция с тем же именем, DetermineTree(), в Datasheets.vbs. Из моего действия я вызываю функцию, которая в конечном итоге вызовет DetermineTree(). Я хочу указать, что я хочу позвонить DetermineTree() из Explorer.vbs, а НЕ из Datasheets.vbs

Я понимаю, что если я изменю порядок, в котором библиотеки связаны, это решит проблему, но я ищу решение этой проблемы.

в С#, я думаю, вы можете указать, используя точечную запись, например. Проводник.ОпределитьДерево()


person Alvaromon    schedule 26.06.2017    source источник


Ответы (2)


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

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

Хитрым решением вашей проблемы может быть использование LoadFunctionLibrary перед вызовом функции, чтобы обеспечить окончательное решение о том, какую функцию использовать, за правильной библиотекой функций.

person Motti    schedule 27.06.2017

Вы можете прочитать это дальше, чтобы понять, какая функция будет вызываться первой (порядок) - -the-function-name-are-same-in-uft-12">Почему вызывается только последняя функция, если в UFT 12.02 имя функции такое же?

person Pranav    schedule 03.07.2017