和各位亲交流一下我对自动化测试的想法,欢迎各位专家拍砖。我认为,成功的自动化测试工程的成功公式为:
成功(100%)=高效的自动化测试框架平台(30%)+合理科学的自动化测试用例设计策略及实现(35%)+持续运营维护(25%)+其他(10%)
高效的自动化测试框架平台(30%):
咱们测试部门现在的自动化测试框架的水平,在全国绝对处于非常领先的地位。全国的IT企业里面,拥有和我们类似框架的没有几家。我们现在已经越过了河流,游到了对岸,而大多数还在摸着石头尝试过河。我们的改变也是最近几个月的事情,之前虽对自动化工具有所研究,但纯粹靠编程来实现自动化测试,不适合我们公司(测试用例稍有修改,就需要重新编译打包,没人喜欢;我们的业务测试人员的编码水平也不足以完成大量用例的编写)。
虽对取得的成绩自豪,但是咱们的工具还没到冰封代码的时刻,我们还有很多想法需要花时间和精力去实现,也需要更多的人力……新的正能量的加入,是个很好的开始。我也写好了半年开发计划,期待半年后,一个更完整,遵循简单、高效理念的框架为大家所喜爱。这个30%,测试工具开发部门可以拿到满分的120%!
合理科学的自动化测试用例设计策略及实现(35%):
自动化测试用例设计策略是个很大的话题,需要我们在实践中不断总结:
需要自动化的比例?
–》自动化测试属于功能测试的一部分,自动化测试带来效率改变的同时,也需要花费很多精力去创建及维护测试脚本,需在投入和产出之间找到平衡。把Testlink上面所有的功能用例都自动化—即使这是未来的规划方向—这也是不现实的。那些最稳定、功能最重要的功能模块才需要自动化。
自动化什么样的用例?
–》软件测试用例的设计有横向与纵向之分,工程学上以较长为纵、较短为横,纵向指的完整的业务流程用例设计,横向设计即切面设计,把功能模块从大向小细分。Testlink上面的用例大都属于后者,事无巨细都考虑的很清楚。对于自动化测试,因投入成本问题,选取纵向设计的用例比较科学合理。建议:重新设计合理的自动化测试用例,而不是简单盲目选用testlink上面已有用例。你,如何认为呢?
相信自动化测试用例数目吗?
–》打开testlink,咱们的“NGB系统端”和“SmartTV系统”的用例数在8000左右啊!!!8000个用例全都自动化实在没有必要,也没可能。大部分用例也是只有标题,没有内容。还不如80个覆盖重要功能的完整业务流程的纵向测试用例实在啊!
……
持续运营维护(25%):
自动化测试不是一次性筷子工程,而是需要我们不断的运营维护,我们运营维护的时间越长,从中受益也越大。运行后及时分析结果,反馈bug给开发或者完善测试脚本。产品升级之后,也需要更新测试脚本的。
其他(10%):
其他影响因素,如果其他90%都做得很好,自动化项目还是失败了,都可以归于此。当项目组想告别刀耕火种的方式时,建议以实施自动化测试作为绩效考核之一。审核机制,建议同时关注自动化测试的产量和质量,不要只相信数字,不要相信国内的免检产品。
其他的其他……
除非注明,文章均为LoggingSelenium网站原创,欢迎转载!转载请注明本文地址,谢谢。本文地址:http://loggingselenium.com/?p=6 .
本文链接
Portal-Basic Java Web应用开发框架(简称 Portal-Basic)是一套功能完备的高性能Full-Stack Web应用开发框架,内置稳定高效的MVC基础架构和DAO框架(已内置Hibernate、MyBatis和JDBC支持),集成 Action拦截、Form Bean / Dao Bean / Spring Bean装配、国际化、文件上传下载和缓存等基础Web应用组件,提供高度灵活的纯 Jsp/Servlet API 编程模型,完美整合 Spring,支持Action Convention“零配置”,能快速开发传统风格和RESTful风格的Web应用程序,文档和代码清晰完善,非常容易学习。
Portal-Basic 源码、示例及文档资源:请访问 google code 项目 ^_*
Portal-Basic在设计之初就充分注重功能、性能与使用体验。Portal-Basic主要特点:
1) 功能全面:内置稳定高效的MVC基础架构和DAO框架,支持Action拦截、Form Bean / Dao Bean / Spring Bean装配和声明式事务,提供国际化、文件上传下载、缓存和页面静态化等常用Web组件,能满足绝大部分Web应用的需要。
2) 高度扩展:Portal-Basic通过的plug-in机制可以灵活扩展,Portal-Basic发布包中自带的portal-basic-ext-rest和portal-basic-ext-spring均以插件的形式提供,用户可根据需要加载或卸载这些插件。应用程序开发者也可以根据实际需要编写自定义插件来扩展Portal-Basic。
3) 强大的整合能力:Portal-Basic是一个Full-Stack框架,同时也是一个开放式框架,可以以非常简单的方式整合第三方组件。本开发手册会详细阐述如何在Portal-Basic中整合FreeMarker、Velocity、UrlRewrite、EHCache-Web、Spring、Hibernate和MyBaits等常用框架和组件。
4) 高性能:性能要求是Portal-Basic的硬性指标,从每个模块的设计到每行代码的实现都力求简洁高效。另外,Portal-Basic并没有对JSP/Servet API进行过多封装,开发者仍然使用JSP/Servet API开发应用程序,没有过多的迂回,性能得到保证。
5) 优秀的使用体验:Portal-Basic的设计目标之一是提供良好的开发体验,尽量减少应用程序开发者的工作,API的设计力求简单、完整、明确。同时,Portal-Basic为应用开发提供了大量Util工具,用来处理应用程序开发过程中通常会遇到的一般性问题,进一步减少应用程序开发者的工作负担。
6) 平缓的学习曲线:平缓的学习曲线:学习使用Portal-Basic只需掌握一定的Core Java与JSP/Servlet知识,本开发手册会循序渐进阐述每个知识点,每个知识点都会结合完整的示例进行讲述,知识点之间前后呼应,确保学习者在学习时温故知新,融会贯通。
7) 完善的技术支持:除了提供完善的开发手册和示例代码以外,还提供博客和QQ群用于解答使用Portal-Basic过程中碰到的所有问题。接下来,将计划建设一个Portal-Basic技术论坛。
Portal-Basic 3.0.1 更新:
1、增加 Action Convention,支持“Action 零配置”:
1) 根据 Action 请求的地址信息自动加载 Action,并调用相应的入口方法处理请求
2) 根据 Action 请求的地址信息和 Action Result 自动组合出输出页面的地址并转发
3) 通过 @Result/@Results 和 @ExceptionMapping/@ExceptionMappings 注解自定义 Result 和 Exception 处理策略
2、增加 REST 支持:
1) 增加 REST 插件包 portal-basic-ext-rest-3.0.1.jar 用于支持 REST
2) portal-basic-ext 通过 com.bruce.ext.rest.RestDispatcher 过滤器把 REST 请求转换为 Action 请求
3) portal-basic-ext 提供 com.bruce.ext.rest.RestActionSupport 作为处理 REST 请求的 Action 基类
4) Action 的 REST 请求处理方法通过声明 @Get/@Post/@Put/@Delete 注解来匹配 REST 地址格式,并注入参数
5) 内置 Rails-style REST 标准方法
6) 同时支持 HTML/XML/JSON 三种视图格式,应用程序也可以扩展自己的视图格式
7) portal-basic-ext 与 Action Convention 结合使用能实现“零配置”处理 REST 请求
本文链接
Portal-Basic Java Web应用开发框架(简称 Portal-Basic)是一套功能完备的高性能Full-Stack Web应用开发框架,内置稳定高效的MVC基础架构和DAO框架(已内置Hibernate、MyBatis和JDBC支持),集成 Action拦截、Form Bean / Dao Bean / Spring Bean装配、国际化、文件上传下载和缓存等基础Web应用组件,提供高度灵活的纯 Jsp/Servlet API 编程模型,完美整合 Spring,支持Action Convention“零配置”,能快速开发传统风格和RESTful风格的Web应用程序,文档和代码清晰完善,非常容易学习。
Portal-Basic 源码、示例及文档资源:请访问 google code 项目 ^_*
Portal-Basic在设计之初就充分注重功能、性能与使用体验。Portal-Basic主要特点:
1) 功能全面:内置稳定高效的MVC基础架构和DAO框架,支持Action拦截、Form Bean / Dao Bean / Spring Bean装配和声明式事务,提供国际化、文件上传下载、缓存和页面静态化等常用Web组件,能满足绝大部分Web应用的需要。
2) 高度扩展:Portal-Basic通过的plug-in机制可以灵活扩展,Portal-Basic发布包中自带的portal-basic-ext-rest和portal-basic-ext-spring均以插件的形式提供,用户可根据需要加载或卸载这些插件。应用程序开发者也可以根据实际需要编写自定义插件来扩展Portal-Basic。
3) 强大的整合能力:Portal-Basic是一个Full-Stack框架,同时也是一个开放式框架,可以以非常简单的方式整合第三方组件。本开发手册会详细阐述如何在Portal-Basic中整合FreeMarker、Velocity、UrlRewrite、EHCache-Web、Spring、Hibernate和MyBaits等常用框架和组件。
4) 高性能:性能要求是Portal-Basic的硬性指标,从每个模块的设计到每行代码的实现都力求简洁高效。另外,Portal-Basic并没有对JSP/Servet API进行过多封装,开发者仍然使用JSP/Servet API开发应用程序,没有过多的迂回,性能得到保证。
5) 优秀的使用体验:Portal-Basic的设计目标之一是提供良好的开发体验,尽量减少应用程序开发者的工作,API的设计力求简单、完整、明确。同时,Portal-Basic为应用开发提供了大量Util工具,用来处理应用程序开发过程中通常会遇到的一般性问题,进一步减少应用程序开发者的工作负担。
6) 平缓的学习曲线:平缓的学习曲线:学习使用Portal-Basic只需掌握一定的Core Java与JSP/Servlet知识,本开发手册会循序渐进阐述每个知识点,每个知识点都会结合完整的示例进行讲述,知识点之间前后呼应,确保学习者在学习时温故知新,融会贯通。
7) 完善的技术支持:除了提供完善的开发手册和示例代码以外,还提供博客和QQ群用于解答使用Portal-Basic过程中碰到的所有问题。接下来,将计划建设一个Portal-Basic技术论坛。
Portal-Basic 3.0.1 更新:
1、增加 Action Convention,支持“Action 零配置”:
1) 根据 Action 请求的地址信息自动加载 Action,并调用相应的入口方法处理请求
2) 根据 Action 请求的地址信息和 Action Result 自动组合出输出页面的地址并转发
3) 通过 @Result/@Results 和 @ExceptionMapping/@ExceptionMappings 注解自定义 Result 和 Exception 处理策略
2、增加 REST 支持:
1) 增加 REST 插件包 portal-basic-ext-rest-3.0.1.jar 用于支持 REST
2) portal-basic-ext 通过 com.bruce.ext.rest.RestDispatcher 过滤器把 REST 请求转换为 Action 请求
3) portal-basic-ext 提供 com.bruce.ext.rest.RestActionSupport 作为处理 REST 请求的 Action 基类
4) Action 的 REST 请求处理方法通过声明 @Get/@Post/@Put/@Delete 注解来匹配 REST 地址格式,并注入参数
5) 内置 Rails-style REST 标准方法
6) 同时支持 HTML/XML/JSON 三种视图格式,应用程序也可以扩展自己的视图格式
7) portal-basic-ext 与 Action Convention 结合使用能实现“零配置”处理 REST 请求
本文链接