Webx简介(转)
来源:互联网 发布:电脑摄像头监视器软件 编辑:程序博客网 时间:2024/06/06 13:22
经常会到博客来看看大家的一些文章,都写的相当精彩,有水平,感觉大家好像都写了,自己没什么写的,后来跟师傅婉佩沟通,才了解到这样想是错的,每个人针对每个东西可能想法观点都不同,写得也肯定会不一样的,所以也来跟大家交流交流。
进淘宝后,就在参与珠联璧合的Webx层接口测试实践,期间也得到不少沉淀与总结,为了提高我们会员营销线同学的技术能力,也会在内部进行相关的一些学习培训!感觉同样是可以分享给大家的,所以就写下第一篇。
我们现在提倡接口测试提前到Webx层,好处就不多说,大家应该耳熟能详了。那我觉得,特别是对于新人来说,首先我们应该先了解Webx这个东西,然后我们大家对Webx层接口测试才会比较轻松容易的掌握,下面就简单介绍Webx是什么东东。
一般基本web应用的层次是这样的,如下图:
Apache公司有个开源项目Cactus,是专门针对上面的Servlet来做接口测试的一个框架。有兴趣的同学可以去研究下,官方网站:http://jakarta.apache.org/cactus/
我们淘宝内部Web应用的层次是这样的,如下图:
大家可以看出本质是一样的,Webx框架其实就是把页面与Service层之间的一些Servlet等公共的东西抽象出来,提供相应的服务以提高开发效率,所以我们就必须有针对Webx框架的一套自己的测试解决方案,itest就诞生了。
Webx里面有三个比较重要的概念,action,screen,control,下面分别来做介绍,看图:
页头Head、菜单Menu、页脚Foot,这些通常是变化不大的,都可以做成control小控件;
页中Middle,这块通常是变化比较大的,可以做成screen;
上图是大家都十分熟悉的淘宝登录页面,填入相应信息后,点击登录按钮,这个动作就是action;
我们对webx层做接口测试,就是对action与screen来做测试,它们的区别是:
1、screen就相当于select查询,比如请求一个链接http://localhost:8080/test/get_user.vm,就会有GetUserScreen中的execute方法来获得用户信息,然后将其渲染到get_user.vm显示到页面。
示例代码:
2、action就相当于insert或update,比如注册页面,需要填写表单信息,然后点击注册按钮,请求http://localhost:8080/test/register.do,就会有UserAction中的doRegister方法来处理这些数据,插入到数据库表中。
示例代码:
按照Webx规范,是这么区分的,但是action与screen能做同样的事,有时候开发可能不太会去严格的区别它们,有些开发主要关注能实现功能即可。
综上,webx层接口测试,就是对action里面的doXXX方法,与screen里的execute方法来做测试,这些就是我们所谓的接口,接口测试并不一定要是interface声明才算,对于页面来说,action/screen里的方法就是提供给页面来调用,供外部使用的,都可以被称为接口。
我们淘宝的一个系统一般会有多个子工程,有个工程是web的,我们要做的接口测试就是在src/main/java/…/module下面,有action与screen。如图:
最后,希望大家对Webx有个简单的认识,特别是新人,这样更能快速掌握Webx接口测试。
- Webx简介(转)
- Webx框架:Pipeline简介
- webX
- Webx
- webx
- Webx3.0学习笔记(一):Webx简介
- webx- webx framework
- Webx-webx turbine
- webx解析
- Webx SpringExt
- webx概念
- WebX基础知识
- webx学习
- webx 学习
- webx入门
- webx小结
- Webx配置文件
- Webx介绍
- socket原理【转载】
- SSL协议原理(Secure Socket Layer)【转载】
- 《ACM程序设计》书 训练题中的Q题
- 解决mysql 10048 错误
- 设计模式之抽象工厂——星际争霸版【转载】
- Webx简介(转)
- Java简介
- Java代码的十一种常见错误【转载】
- 判断Java空字符串三种方法的比较
- unicode字符范围(包括中文、日语、韩文和各种特殊字符集)
- Lua中用Split函数分割字符串
- 程序中参数的检查
- Thinkphp上传文件失败原因--Public目录限制
- MySQL数据库CSV存储引擎的使用(转)