【问题标题】:Testing D2009 application with Test Complete 7.0使用 Test Complete 7.0 测试 D2009 应用程序
【发布时间】:2009-07-02 14:33:04
【问题描述】:

我们正在尝试使用 Test Complete 7 来测试在 Delphi 2009 中编译的应用程序(最近从 D2006 移植)。从理论上讲,这应该很容易 - 您使用调试信息编译您的应用程序,然后使用剥离器实用程序将调试信息剥离到单独的 *.tds 文件中。然后 TC 应该可以访问它需要的所有属性和方法。在实践中,我们发现: a) 让许多属性和方法出现是相当困难的 b) 如果它们确实出现并且它们具有参数/索引,那么指示的参数/索引列表可能与我们代码中的实际列表无关 c) 看起来像船形的方法和属性不起作用/返回除了完全垃圾之外的任何东西。

其他人是否有过这种情况的经验,您是否遇到过任何问题,如果您能够解决这些问题,您是怎么做的?

自动化 QA 正在为我们调查这个问题,但我们似乎没有取得太大进展,而且他们似乎解决这个问题的唯一方法是,如果我们向他们发送我们的应用程序的源代码我们不愿意这样做,从实际到合法的各种原因。

顺便说一句,在一个小型测试应用程序上,我们不会遇到同样的问题。

【问题讨论】:

  • 您以前是否针对 Delphi 2006 编译版本使用过 Test Complete 6?如果是这样,那么 AQ 可能必须修复它。否则,您可能会建议将其作为您团队的故障排除步骤。在 Test Complete 6 到 7 或 Delphi 2006 到 Delphi 2009 之间可能出现了问题。切换到 Unicode 可能是最大的变化。
  • 我们之前使用过Test Complete 5,但完成的方式不同。您必须添加一些单元才能使应用程序“打开”。我们目前正在与 AQ 合作,但他们似乎不知道问题出在哪里。

标签: delphi testcomplete


【解决方案1】:

我正在回答我自己的问题,因为我们发现了问题。将泛型添加到可执行文件似乎会创建调试信息,Test Complete 无法处理。还不确定是 Delphi 弄乱了调试信息,还是 Test Complete 没有正确读取它。

【讨论】:

  • 感谢更新,我们已将部分产品模块迁移到 D2009 并决定暂时使用 Test Complete 6,因为我们也遇到了一些问题。
  • 我们从 Test Complete 5.0 升级到 7.0,因为 Automated 告诉我们只有 Test Complete 7.0 完全支持 D2009
【解决方案2】:

如果问题没有出现在小型测试应用程序中,您可以进行“二分查找”:

将大应用的更多单元(以及这些单元中的方法调用)添加到测试应用中,并检查是否出现问题。

如果是,请移除一些单元,直到问题消失。

如果不是,请添加更多单元并再次测试,直到出现问题。

经过一些迭代,您应该找到导致问题的单元/操作。

【讨论】:

    【解决方案3】:

    只是建议:

    在您的大项目中,您是否使用了任何可能改变或以其他方式“无效”调试信息的东西? Madexcept 可能(Madexcept 不会将调试信息捆绑到 exe 本身中,这可能会导致任何其他生成的调试信息不​​正确?)

    您的测试应用程序使用的编译器设置是否与主应用程序相同?也许您在主应用程序中使用了第三方组件,而该第三方组件自然不会出现在您的测试应用程序中?

    【讨论】:

    • 所有好的建议,但都已经考虑过了。没有任何东西触及可执行文件,虽然我们确实有第三方组件,但我们已经尝试将这些组件合并到测试应用程序中,但无法弄清楚为什么它们会产生任何影响。它们是简单的组件..
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-11-05
    • 1970-01-01
    • 1970-01-01
    • 2018-03-04
    • 2015-08-17
    • 1970-01-01
    • 2020-12-26
    相关资源
    最近更新 更多