调试和测试 Swing 代码
2010-03-17 00:00:00 来源:WEB开发网Swing 是一个强大的 GUI 工具包;它可扩展、可配置且跨平台。不过 Swing 的灵活性既是它的主要优势也是它的重大弱点。Swing 可以不同的方式构建同一 UI。例如,您可以使用插页、空白边框或填充符在 GUI 组件之间置入间隔。鉴于 Swing 选项太多,了解现有 GUI 如同编写新 GUI 一样令人畏惧,且将其视觉外观与底层代码对应起来也并非易事。(试着在阅读几个使用 GridBagLayout 的代码行时想象一下 GUI。)
不管您是在维护未曾写过的 Swing GUI 还是集成第三方 GUI 组件到您的应用程序中,理解代码的一种合理方法是编写测试。在编写测试的同时您也就熟悉了未知代码的内部构造。这样做会同时产生另一个有价值的结果,即您最终会有一个测试套件,它有助于在维护代码时预防回归的引入。对于第三方 GUI 组件,测试套件有助于查明新版本的库是否引入了任何行为变化。
一开始最好先编写功能测试,以了解 GUI 如何响应用户输入。为 GUI 编写测试比为非可视化代码编写测试更复杂,因为:
理论上,测试必须是自动化的,但是 GUI 则是供人类 — 而非计算机程序 — 使用的。
传统的单元测试涉及到隔离类的测试,不适合 GUI 组件。在 GUI 术语中,一个 “单元” 涉及多个 GUI 组件的协作,因此它本身包含不止一个类。
GUI 响应用户生成的事件。要测试 GUI,你需要一种可以模拟用户输入的方法,一直等到生成的事件散播给所有侦听者,然后检查结果,就像 GUI 响应用户一样。编写模拟用户与 GUI 交互的代码会很繁琐且易出错。
更改 GUI 的布局不应影响强健的功能测试。
另外一个问题就是您必须事先熟知要测试的 GUI 的结构和行为,否则您不知道自动化测试应使用哪些组件,且哪些内容需要验证。总而言之,要编写 GUI 测试,您必须知道:
- ››调试JavaScript错误
- ››调试和测试 Swing 代码
- ››调试集成 Java 和 C/C++ 的代码
- ››Swing中Timer定时器的使用
- ››Swing中为文本组件定制统一的菜单
- ››调试JavaScript脚本程序(Firefox篇)
- ››调试JavaScript/VB Script脚本程序(ASP.NET篇)
- ››调试JavaScript/VB Script脚本程序(Wscript篇)
- ››调试JavaScript/VB Script脚本程序(ASP篇)
- ››调试JavaScript/VB Script脚本程序(IE篇)
- ››调试诊治CSS布局的10个有效方法
- ››调试工具系列--java 正则表达式(regular expres...
更多精彩
赞助商链接