QTP / Dynamic Great Plains自动化

时间:2009-07-13 19:31:47

标签: unit-testing user-interface qtp dynamics-gp

我最近使用QTP,TestComplete和其他GUI识别/交互工具完成了有关GP功能测试自动化可能性的详细调查。 简而言之,这些工具都不是很好。上面提到的最好,但在录制的示例脚本中仍然有许多硬编码。 QTP确实表现得更好。

一些GUI在.NET(swf ...在QTP中)被识别并处理得很好。其他一些仅被识别为swfObject,但访问本机方法和属性允许执行所需的交互。

最后,内部名为“Microsoft.Dexterity.Shell.DexDialogHost”的对象呈现的对象似乎没有Windows句柄,因而无法通过QTP识别。我没有找到关于这些对象族的任何详细文档(比如类引用以找出方法的名称)。

所以我想知道是否有人可以分享自动化GP的经验以及使用了什么工具/方法。

感谢。

4 个答案:

答案 0 :(得分:0)

如果QTP无法识别某些控件,您可以使用 .NET可扩展性扩展它支持的控件集。这允许您添加与这些控件相关的新功能,但QTP不支持开箱即用。请注意,需要进行一些.NET编程。

.NET扩展性的文档可在开始>中找到。节目> QuickTest Professional>可扩展性>文档> .NET加载项Windows窗体可扩展性帮助


当天的事实:QTP中.NET个对象名称中的 SWF 代表 S 系统 W indows F orms。

答案 1 :(得分:0)

对于部分成功的对象,您注意到的对象被识别为SwfObject - 如果这些逻辑映射到标准类,您可以配置QTP将其视为标准类。例如,如果您的SwfObject的行为类似于按钮,则可以将QTP配置为记录和重放,就好像它是标准按钮一样。

[删除建议的击键+ clipbaord解决方案因为这种情况不适合给出进一步的信息,即有多个敏捷对话框,每个对话框都有很多对象]

答案 2 :(得分:0)

我花了一段时间进行研究,然后实际证明了这个概念。 我开始撰写关于Great Plains自动化成功案例的系列文章,其中我将调查的所有细节和步骤以及示例代码放在一起。

http://automation-beyond.com/2009/08/24/great-plains-automation/

http://automation-beyond.com/2009/08/26/dynamics-great-plains-gui/

http://automation-beyond.com/2009/09/01/gp-automation-utilizing-com/

(待续)

以下是摘要。

  1. Microsoft Dynamics Great Plains拥有自己的完全独立的GUI /事件系统(Dexterity),使其成为跨平台产品。同样的事情使它几乎完全无法从外面进入“黑匣子”。

  2. 特定于平台的引擎支持COM自动化和Windows平台的各种集成模型。所有这些都是在Continuum Integration Library名下收集的。

  3. 对于测试自动化需求特别有用,Continuum提供了高级方法来模拟 GUI的用户输入,因此其作用与测试自动化工具的作用相同。

  4. 如果Continuum不能满足测试自动化的需求,可以实时直接调用sanScript(Dexterity的内部脚本语言)。

  5. 综上所述,我为Quick Test Professional创建了自定义“Dexterity GUI”组件,实现了Microsoft Dynamics Great Plains应用程序的功能测试自动化。当然,没有使用键盘/鼠标硬编码的解决方法。

  6. 谢谢。

答案 3 :(得分:0)

您可以从hp下载.NET加载项。 link text