Vbscript 自动化UFT远程代理设置

Vbscript 自动化UFT远程代理设置,vbscript,qtp,hp-uft,alm,Vbscript,Qtp,Hp Uft,Alm,问题:在计算机上运行测试集之前,我需要以编程方式更改UFT的远程代理设置(附图像) 迄今为止尝试的方法: 我在互联网上查找,发现所有远程代理的设置值都放在文件mic.ini中,该文件位于UFT安装目录的bin文件夹中。我考虑使用文件系统对象将文件作为textstream打开,并进行必要的更改。但是,事实证明,我没有该bin文件夹的管理员权限,因此我无法保存在mic.ini文件中所做的更改(错误:访问被拒绝)。不幸的是,获得管理员权限不是我的选择 除了这种方法,我找不到任何有助于我完成这项任务的方

问题:在计算机上运行测试集之前,我需要以编程方式更改UFT的远程代理设置(附图像)

迄今为止尝试的方法
: 我在互联网上查找,发现所有远程代理的设置值都放在文件
mic.ini
中,该文件位于UFT安装目录的bin文件夹中。我考虑使用文件系统对象将文件作为textstream打开,并进行必要的更改。但是,事实证明,我没有该bin文件夹的管理员权限,因此我无法保存在mic.ini文件中所做的更改(错误:访问被拒绝)。不幸的是,获得管理员权限不是我的选择

除了这种方法,我找不到任何有助于我完成这项任务的方法

有没有其他方法可以通过编程更改这些设置?是否有远程代理对话框的对象模型可供我使用

注意:这可能不是您想要的答案,但这正是我发现并证明自己的原因

要从选项开始取消选中
保持UFT打开…
选项,以下是直接来自以下站点的注释:

在测试实验室运行会话结束后保持UFT打开:

默认情况下,当ALM在测试集期间在远程计算机上打开UFT时 运行(或在运行测试中选定的测试或配置时) 它在测试实验室运行会话结束时关闭UFT。 这确保了UFT许可证在该点被发布并生效 可供其他UFT用户使用

选择此选项将使UFT在您的计算机上保持打开状态(并 测试实验室运行会话结束后,继续使用UFT许可证)

注意:上述行为仅在UFT打开时相关 从将SUPPORT_TESTSET_END参数设置为的ALM服务器 Y.(Y是默认设置)。如果UFT是从较早的 ALM的版本(或上述参数设置为N),此 选项被忽略,UFT在运行结束时始终保持打开状态 会议

有关SUPPORT_TESTEND参数的详细信息,请参阅上的部分 在应用程序生命周期中设置ALM配置参数 管理管理员指南

如前所述,如果
SUPPORT\u TESTSET\u END
参数设置为
Y
,ALM将默认关闭UFT。所以我会和ALM管理团队核实一下


现在,对于取消选中
在调试模式下运行UFT
选项的选项,您可以将UFT应用程序对象的运行模式选项保持为
Fast

注意:您确实不需要进行此更改,因为默认情况下ALM将以快速模式运行UFT脚本

以下是用于理解的示例脚本:

On Error Resume Next
Dim qtApp '~~> Declare the Application object variable

'~~> Create the UFT Application object
Set qtApp = CreateObject("QuickTest.Application") 

'~~> If UFT is notopen then open it
If qtApp.launched <> True then 
    qtApp.Launch 
End If 

'~~> Make the QUFT visible
qtApp.Visible = FALSE
If Not qtApp.TDConnection.IsConnected Then
    '~~> Make changes in a test on Quality Center with version control
    qtApp.TDConnection.Connect "QC URL","DOMAIN Name","Project Name","User Name","Password",False
End If

'--------------------------------------------------------------------
Dim defaultRunMode, fastRunMode, normalRunMode
defaultRunMode = qtApp.Options.Run.RunMode

qtApp.Options.Run.RunMode = "Fast"
fastRunMode = qtApp.Options.Run.RunMode

qtApp.Options.Run.RunMode = "Normal"
normalRunMode = qtApp.Options.Run.RunMode

Msgbox "Different RunModes" & VbCrLf & _
    VbTab & "DEFAULT RunMode : " & defaultRunMode & VbCrLf & _
    VbTab & "After FAST RunMode : " & fastRunMode & VbCrLf & _
    VbTab & "After NORMAL RunMode : " & normalRunMode
'--------------------------------------------------------------------

'~~> Script path  and script name in ALM
qtApp.Open "[ALM] Subject\QCScriptPath\ScriptName", False
qtApp.Test.Run
qtApp.TDConnection.Disconnect

'~~> Close UFT
qtApp.quit

'~~> Release Object
Set qtApp = Nothing

'~~> Handle Error
If Err.Number <> 0 Then
    Msgbox Err.Number & " : " & Err.Description
    Err.Clear
End If
出错时继续下一步
Dim qtApp'~~>声明应用程序对象变量
“~~>创建UFT应用程序对象
设置qtApp=CreateObject(“QuickTest.Application”)
“~~>如果UFT未打开,则打开它
如果qtApp.launched为True,则
qtApp.Launch
如果结束
“~~>使QUFT可见
qtApp.Visible=FALSE
如果未连接qtApp.TDConnection.IsConnected,则
“~~>使用版本控制在质量中心的测试中进行更改
qtApp.TDConnection.Connect“QC URL”、“域名”、“项目名称”、“用户名”、“密码”,False
如果结束
'--------------------------------------------------------------------
Dim默认运行模式、快速运行模式、正常运行模式
defaultRunMode=qtApp.Options.Run.RunMode
qtApp.Options.Run.RunMode=“快速”
fastRunMode=qtApp.Options.Run.RunMode
qtApp.Options.Run.RunMode=“正常”
normalRunMode=qtApp.Options.Run.RunMode
Msgbox“不同运行模式”&VbCrLf&_
VbTab和“默认运行模式:”&defaultRunMode&VbCrLf&_
快速运行模式后的VbTab和:“&fastRunMode&VbCrLf&_
VbTab&“在正常运行模式之后:”&正常运行模式
'--------------------------------------------------------------------
'~~>ALM中的脚本路径和脚本名称
qtApp.Open“[ALM]主题\QCScriptPath\ScriptName”,False
qtApp.Test.Run
qtApp.TDConnection.Disconnect
“~~>关闭UFT
qtApp.quit
“~~>释放对象
设置qtApp=Nothing
“~~>句柄错误
如果错误号为0,则
Msgbox错误号&“:”&错误说明
呃,明白了
如果结束
下面是msgbox的输出:


您是说从GUI可以更改勾选框,而不能更改.ini文件吗。也许像selenium这样的东西可以帮助您实现自动化,并选择UFT“是/否”,但我不确定这样的东西是否存在!祝你今天愉快,祝你好运:-)是的。从GUI,我可以更改它,但不能从mic.ini文件传输更改,因为您应该始终是“同一用户”。不管怎样,正如我所说的,也许像硒这样的东西可以帮助你自动切换,但我不确定。不幸的是,我在这方面没有经验:-)也许其他人有更多的经验。或者你可以在互联网上找到类似的东西,不确定,但祝你一切顺利!远程代理设置不会自动更改,您只需要为运行测试的用户设置一个远程代理设置。如果您使用任何脚本来控制UFT,那么这些脚本可以根据您的需求轻松完成任务。我有相同的设置,我使用jenkins,它可以发送带有执行结果的电子邮件,并且不需要在机器上更改任何设置,如果您可以告诉我您要更改哪些设置,那么我可能可以帮助您在不更改远程代理设置的情况下实现它。感谢您提供这些详细信息(以及链接)。我不知道这些默认设置。但我仍然想通过脚本使这些设置更加可配置。我会继续努力……很乐意帮助……:)