如何仅将过程的一部分调用到另一个vbscript中?

时间:2018-08-10 18:18:38

标签: vbscript testcomplete

我有一个名为script 1的脚本,该脚本创建一个文本文件并将一些字符串值存储到其中。 我需要将此脚本script 1调用到另一个名为script 2的脚本文件中,但只包含其中一部分(脚本1)。我不想调用将存储字符串值的脚本部分(脚本1)。

如何仅将script 1的一部分称为script 2?我正在使用TestComplete运行这些脚本。

2 个答案:

答案 0 :(得分:1)

您可以在script 1中传递一些参数,在将一些值存储到文件中之前您可以每次进行检查

function script1(flag)
    ----create text file---
    if flag<>false then
        --stores some string values--
    end if
end function

function script2
    Call script1(false)
end function

如果您不能像在script1中传递某些参数那样进行任何更改(因为它也可能会从其他脚本中调用,那么您将不得不在任何地方更改签名),则可以创建一个全局变量并从script2调用它之前,请在该变量中分配一些值,然后在script1中检查该值。

dim flag=true

function script1()
    ----create text file---
    if flag<>false then
        --stores some string values--
    end if
end function

function script2()
    flag=false
    call script1()
    flag=true
end function

希望这可以解决您的问题。否则,请共享一些示例代码,以便我可以更好地理解这种情况。

答案 1 :(得分:0)

这是一个示例,您可以执行所有“正文”内容,也可以剪切某些行或任何所需的内容。

您将两个文件都放在了同一文件夹中

这是Script1.vbs的内容

a=5
msgbox "hello world"
b=3
msgbox cstr(a*b)

这是Script2.vbs的内容

Set fs = CreateObject("Scripting.FileSystemObject")
Set ts = fs.OpenTextFile(".\script1.vbs",1,FALSE)
ts.ReadLine
body = ts.ReadLine
ts.Close
Execute body