标签归档 » 测试,流程,改进,质量,效率

接口测试之JsonObject

JSONObject使用方法 分类: JSONObject2013-03-12 16:51 38905人阅读 评论(3) 收藏 举报 目录(?)[+] 1.JSONObject介绍 JSONObject-lib包是一个beans,collections,maps,java arrays和xml和JSON互相转换的包。 2.下载jar包 http://files.cnblogs.com/java-pan/lib.rar 提供了除JSONObject的jar之外依赖的其他6个jar包,一共7个jar文件 说明:因为工作中项目用到的版本是1.1的对应jdk1.3的版本,故本篇博客是基于1.1版本介绍的。 对应此版本的javadoc下载路径如下:http://sourceforge.net/projects/json-lib/files/json-lib/json-lib-1.1/ 目前最新的版本为2.4,其他版本下载地址为http://sourceforge.net/projects/json-lib/files/json-lib/ 3.项目环境: system:WIN7 myeclipse:6.5 tomcat:5.0 JDK:开发环境和编译用的都是1.5 项目结构如下: 说明:本次用到的的文件只有工程目录json包下的JSONObject_1_3类和note.txt 4.class&method 基于1.1的API 做以下几点约定: 1.介绍基于JSONObject 1.1的API 2.只介绍常用的类和方法 3.不再介绍此版本中已经不再推荐使用 4.介绍的类和方法主要围绕本篇博客中用到的 JSONObject:A JSONObject is an unordered collection of name/value pairs. 是一个final类,继承了Object,实现了JSON接口 构造方法如下: JSONObject();创建一个空的JSONObject对象 JSONObject(boolean isNull);创建一个是否为空的JSONObject对象 普通方法如下: fromBean(Object bean);静态方法,通过一个pojo对象创建一个JSONObject对象 fromJSONObject(JSONObject object);静态方法,通过另外一个JSONObject对象构造一个JSONObject对象 fromJSONString(JSONString string);静态方法,通过一个JSONString创建一个JSONObject对象 toString();把JSONObject对象转换为json格式的字符串 iterator();返回一个Iterator对象来遍历元素 接下来就是一些put/get方法,需要普通的get方法和pot方法做一下强调说明,API中是这样描述的: A get method returns a value if one can be found, and throws an exception if one cannot be found. An opt method returns a default value instead of throwing an exception, and so is useful for obtaining optional values.   JSONArray:A JSONArray is an ordered sequence of values. 是一个final类,继承了Object,实现了JSON接口 构造方法如下: JSONArray();构造一个空的JSONArray对象 普通方法如下: fromArray(Object[] array);静态方法,通过一个java数组创建一个JSONArray对象 fromCollection(Collection collection);静态方法,通过collection集合对象创建一个JSONArray对象 fromString(String string);静态方法,通过一个json格式的字符串构造一个JSONArray对象 toString();把JSONArray对象转换为json格式的字符串 iterator();返回一个Iterator对象来遍历元素 接下来同样是put/get方法……   XMLSerializer:Utility class for transforming JSON to XML an back. 一个继承自Object的类 构造方法如下: XMLSerializer();创建一个XMLSerializer对象 普通方法如下: setRootName(String rootName);设置转换的xml的根元素名称 setTypeHintsEnabled(boolean typeHintsEnabled);设置每个元素是否显示type属性 write(JSON json);把json对象转换为xml,默认的字符编码是UTF-8, 需要设置编码可以用write(JSON json, String encoding) …..

测试团队的工作模式

        测试所扮演的角色或者说测试的工作方式,受到很多因素的影响。例如测试资源的充足程度,开发的模式,开发的资源充足程度等。一般常见的测试工作方式有两种,一种是固定的测试人员,固定的产品,固定的开发人员,不断的迭代一个产品或者产品的衍生版本。还有一种方式就是什么都不固定,测试,开发都是一种服务,根据服务空闲时间,随时被调用。          上面已经提到了测试工作方式的两种方式,接下来说说这两种方式的好处及不足。暂且把第一种方式叫做独占模式,第二种叫服务模式。           对于独占模式好处有以下几个:          1   产品固定,测试人员有时间从需求阶段就介入整个产品的生产过程,对产品的背景,演变过程了如指掌。对于产品的理解程度,决定着测试的效率,发现问题的层次。对于开发人员来说,由于长时间开发一款产品,对于产品的代码架构理解更深刻,代码熟悉程度更高,也就意味着代码bug率会更低,及时有问题,bug修复的速度也会是非常快的。        2 从人员主动性的角度来说,由于只做一个项目责任很明确,做的版本越多,这种责任性越强,到最后基本是以一种这是我的项目的思维来做测试或者开发,做事的效率,质量都会有很大程度的提升。另外一个项目从开始到最后上线,这个过程是一个很有节奏的过程,有快有慢,做事张弛有度,会有一定的舒缓作用。        3 由于长时间做同一个产品,无论是开发还是测试都会从技术改进,流程改进的角度去做一些工具,平台等。        4   能够有效的降低管理成本,独占模式中人员的责任心,积极性都相对来说有很大提高,自我管理会在工作过程中占据主导作用。        5   从项目的角度来说,独占模式下项目的周期可以在需要的时候,通过项目成员的努力大大缩短。       接下来再来说说独占模式的问题:        在于对于开发人员来说,长时间做一个项目会有技术疲劳,对于喜欢挑战的人来说可能是比较痛苦的,同样对于测试人员来说,长时间做一个项目也会测试疲劳。尤其是测试人员,测试疲劳可能会导致一部分问题的漏测。        服务模式来说,它的好处主要是资源利用率比较高,对于项目发展不是特别明确,但是项目又比较多的组织来说更加的节省成本。服务模式带来的好处更多的体现在资源效率上,这里说的资源效率的提高主要是指可以更好的利用开发测试人员的时间,保证项目不会因为暂时的资源缺失,导致项目进度停滞。但是从项目,人员的角度来说又会带来一些问题:     1   首先是管理成本,需要一个人来分配调度资源的使用。怎么样能够更加公平,有效的调度资源这对资源的管理人员来说是个挑战。如果不能够做到公平,服务模式的运转会受到很大影响。    2   对项目来说,开发,测试人员的变换,意味着开发效率,开发质量,测试效率的降低。    3   由于是服务性质的,高效,快速的完成项目意味着很快需要投入到另外一个项目,因此在评估项目周期的时候,会不自觉地延长。即使项目进度会比预期的好,很多情况下也不会出现提前完成这种事。所以对于项目来说,很难说服务模式是提高了效率。   4    做项目的过程中,大家应该都会遇到已经上线了的项目,出现突发情况的。出现了问题,服务模式下是不会有人主动站出来说我来搞定。这时候就需要负责资源调度的人来,紧急调度资源处理这些问题。前面提到的公平这件事,在这个时候就会体现出很大的作用,如果你之前在调度资源的时候不够公平,那么之后需要紧急处理问题的时候,再想调度资源可能就比较困难了。    5   服务模式下,大家在工作过程中大部分都会有一种很机械的感觉,对于一些有想法,想要学习更多东西的人来说,时间长了就不太能接受这种工作方式,如果团队不能够给出合理的解决方式可能会导致团队的不稳定。      以上两种模式各有优缺点,所适应的组织特点也不同。对于资源充足的公司来说,一般都会使用独占模式工作,这也是为什么大公司无论测试还是开发,还是其他角色,技术深度,广度都很不错的原因。对于服务模式来说更适合需要节省成本的公司。使用服务模式,那就需要一个优秀的资源管理者,能够平衡服务型团队的优势以及它天然的缺点。以上观点有不足之处,欢迎指正。