【发布时间】:2010-09-14 11:31:51
【问题描述】:
我们的团队正在 QTP 中自动化测试/测试数据准备,我们在 VBScript 中编写脚本。
在几个测试中,运行脚本的测试人员需要提供一个带有 indata 的 MS-Excel 文件。我们为此使用UserAccounts.CommonDialog,效果很好。除了一个小问题,当我们从 QTP 运行时文件对话框没有获得焦点。它在后台打开,运行脚本的测试人员很容易错过它并浪费时间等待对话框。
我们如何赋予文件对话框焦点?
代码示例:
Set ObjFSO = CreateObject("UserAccounts.CommonDialog")
ObjFSO.Filter = "MS-Excel Spreadsheets|*.xls|All Files|*.*"
while ObjFSO.ShowOpen = false
msgbox "Script Error: Please select a file!"
wend
msgbox "You selected the file: " & ObjFSO.FileName
【问题讨论】:
-
要考虑的另一件事:为什么在测试运行开始时提示测试人员输入文件?这通常可以使用配置文件或类似机制作为运行测试的先决条件来完成。
-
@Tom 非常好的问题。我们正在运行的“测试”实际上是一个测试数据生成脚本。每次运行都会有新的和独特的数据。该脚本将由不使用 QTP 开发且对 QTP 了解不多的人从 QC 运行。我们讨论了几种不同的数据输入方法(硬编码位置和文件名、配置文件、qc 的输入参数),但得出的结论是提示输入文件是最好的。