2

我正在使用 Eclipse 的 RCP 编写客户端-服务器应用程序。我们在测试双方之间的交互时遇到了麻烦,因为它们都包含大量 GUI,并且不提供命令行或其他远程 API。

有什么想法吗?

4

5 回答 5

3

我有大约 1.5 年的 RCP 框架经验,我真的很喜欢它。我们只是简单地用 JUnit 来测试...

说起来有点陈词滥调,但如果不容易测试,也许设计需要一些重构?

Java 和 RCP 框架为保持 GUI 代码和逻辑代码分开提供了很好的工具。我们将 MVC 模式与 Java 中可用的观察者、可观察构造一起使用...

如果您不了解 Java 中的观察者/可观察构造,我强烈建议您看一下:http ://www.javaworld.com/javaworld/jw-10-1996/jw-10-howto .html,您将一直使用它,您的应用程序将更容易测试。

于 2008-08-28T03:50:05.057 回答
2

作为一名前测试和调试经理,我强烈主张使用测试 API。它不会消除对用户界面测试的需求,但您将能够添加自动化测试和非回归测试。

如果绝对不可能,我会设置一个测试代理,您将能够:

  • 什么都不做(透明代理)。您的应用程序应该正常运行。
  • 间谍/记录数据流量。添加过滤机制,这样你就不会抓住一切
  • 阻止特定消息。您的过滤系统在这里非常有用
  • 损坏特定消息(这更难)

如果您需要某种网络测试:

  • 限制一般吞吐量(一些库这样做)
  • 延迟消息(同注)
  • 更改数据包顺序(相当困难)
于 2008-08-28T08:38:57.747 回答
1

您是否考虑过使用 UI 功能测试工具?您可以查看涵盖各种 UI 技术的HP QuickTest Professional 。

于 2008-08-31T11:45:27.870 回答
1

我们正在使用 EJB(J2EE)技术、Eclips 和 MySQL(数据库)开发一种基于客户端-服务器的应用程序。请建议任何用于功能测试的开源测试工具。感谢 Hitesh Shah

于 2008-11-12T06:01:09.150 回答
0

将您的客户端-服务器通信分离成一个纯逻辑模块(或包)。单独测试 - 要么有一个测试服务器,要么使用模拟对象。

然后,让您的 UI 操作调用通信层。另外,看看命令设计模式,使用它可能会对你有所帮助。

于 2009-08-18T12:07:26.453 回答