前些日子, 工作需要, 开发了一个自动化鼠标测试软件, 基本结项了做个简单回顾
整个测试系统由一个硬件测试机台, PC和测试软件组成。被测鼠标放置在机台上,机台根据鼠标的相关参数对其运动轨迹进行分析计算,从而得出测试结果。
目前的测试方法有三角形轨迹测试, 圆形轨迹测试等, 并且, 日后很可能会增加新的测试方法。所以从各种测试方式中抽取出公共部分,设计成测试的抽象类。实际的测试类从整个基类继承。
为了减少UI部分和测试类的偶合程度,采用了工厂模式进行处理,另外,为了保证程序运行期间,只有唯一测试类实例存在,又采用了单件模式。
程序的类框架图如下,小弟初次搞这些东西还希望各位看官多多指点:
自我评价:
- 虽然在软件结构上还算合理,但是到了开发后期,冗余代码还是不少,不过由于时间和测试原因,也没有近一步对软件进行重构。
- 另外, 如果考虑得更长远的话,测试机台的控制类也应该进行抽象, 以便以后可以进行跨机台的使用。
- 野心更大一些, 可以对整个框架进一步改造, 可以进行“插件”管理,试进行各种产品的测试,不仅仅是鼠标,可以控制各种机台,当然,这样UI也要进行大的改造,呵呵