2010-06-28 50 views
2

有没有人有过构建.NET测试执行工具的经验,可以执行现有QuickTest Professional VBScript自动化脚本中的逻辑,但不启动QTP实例?我们正在过渡到Visual Studio 2010和相关的测试管理工具,但我们无法(合理地)抛弃现有的QTP工作。从.NET类执行QTP自动化,无需启动QTP实例

有执行现有QTP自动化的解决方案,但我见过的解决方案需要启动QTP的实际实例。这个问题的解决方案不需要调用QTP应用程序的一个实例(即使在“不可见”模式下)。自然,调用QTP中包含的库是允许的,并且是预期的。

仅供参考,我们试图避免的是启动QTP(并等待应用程序的各个部分执行其操作)的痛苦。 QTP对我们来说是非常不可信的,并且有很多缺陷,我们希望尽量减少与之交互的QTP表面积。

或者,最好的解决方案将涉及到将我们现有的VBScript自动化无缝无缝地转换为.NET自动化,但我并没有屏住呼吸。 :)

+1

我想说这是不可能的,除非QTP有一个发布的API来运行他们自己的测试主机的脚本。你问过他们吗? – 2010-06-28 23:09:21

+0

在这一点上我们还没有问过他们。他们有一个API,但它似乎是围绕通过QTPro.exe实例执行测试而设计的。我相信有一种方法可以在那里偷偷溜走,避开UI,但是我没有看到任何明显的表现。 – stack 2010-06-29 00:09:19

回答

2

QTP的自动化API包括启动一个QTPro.exe(如你所说)的实例,如果你只想运行一个脚本,那么你可以使用加载QTP子集的mdrv.exe(来自QTP的bin目录)。

+0

哦,那有效?如何实现QTP的自动化对象,只有mdrv.exe处于活动状态?或者解决方案“仅”意味着你通过命令行启动QTP测试(mdrv.exe确实能够)? – TheBlastOne 2010-11-10 17:08:07

+0

@TheBlastOne,我的意思是说,如果你使用自动化,你会得到所有的QTP,'mdrv'是一个命令行选项。 – Motti 2010-11-10 20:49:11