大家都知道,一个设计良好的自动化测试框架,就需要考虑到如下几点:
1. 易扩展性 既能满足现在的业务功能需求,又能在日后的项目中复用该框架;
2. 易维护性 当数据,页面设计或业务逻辑发生变更时,能够做稍微修改,轻松完成;
3. 易用性 一个好的框架就像一份好的详细设计,只要是懂一点点代码的人就能轻松写case,可以完全不去关心底层是如何封装设计的,便于推广全员自动化;
4. 易追根溯源 这个的意思就是便于调试和找出代码的问题,打印日志可以快速找到问题所在;
5. 易读性 良好的编码规范,能够让别人轻松独读懂你的代码,即便换人来做也能很容易的看懂;
6. 稳定性 这跟测试人员测试开发的代码一样,稳定可信的产品才具有可信性。
![点击图片可在新窗口打开](http://www.51testing.com/attachments/2011/12/258885_201112251108461rwvI.jpg)
这样,很好地对各个层次实现的功能进行了分离,便于维护和扩展:
1. 数据仓库对应到数据层,测试中用到的数据可以以XML的形式或其他excel等形式存储,以通用接口调用数据,实现数据驱动的自动化框架;
2. 自动化测试的界面接口层处于中间结构中,因为页面可能被很多的业务逻辑使用,这块儿可以以页面为单元建立类和对象,便于业务层调用;
3. 而业务逻辑层也就是我们的测试用例,自动化测试也主要用来做功能逻辑的测试,此时通过调用UI层和数据层来完成测试用例。