我只是好奇--QTP具有通过DotNetFactory对象直接调用.NET对象的功能,请参阅this article from learnqtp.com,但它也可以通过COM调用对象(参见this post from Joe Colantonio)。使用一种方法比另一种方法有什么好处?据我所知,两种方法对可以调用的对象都有类似的限制(没有带参数的构造函数等),但我想知道更深入的细节。
谢谢!
答案 0 :(得分:3)
首先,您的一个假设是错误的,DotNetFactory
确实支持使用参数调用构造函数(这是可选的args
参数的用途)。
CreateObject
函数是built in for VBScript,因为QTP测试是用VBScript编写的,这个功能来自 free ,技术上不是QTP功能。 DotNetFactory
是的一部分,它允许创建.NET对象,即使它们不是COM可见的。
如果你有一个COM可见的.NET对象,你可以选择你更熟悉哪种方法,但如果你有一个COM对象,你必须使用CreateObject
并且如果你有一个非COM可见对象你必须使用DotNetFactory
。