一起买beta版模块接口单元测试

测试目的

保证代码质量,对各个模块进行单元测试,不仅可以有效地保证代码的可靠性,让模块在与别的模块整合时出现更少的错误。

而且不用每次启动程序而等待浪费时间。

单元描述

  • 登录接口

    回调函数返回登录信息

  • 获取用户信息接口

    回调函数返回用户个人信息

  • 获取我的帖子接口

    回调函数返回我的帖子列表

  • 修改用户信息接口

    回调函数返回修改后的结果

  • 查看帖子详情

    回调函数返回帖子详情

  • 管理员获得被举报帖子接口

    回调函数返回被举报的帖子列表。

测试过程

  • 用户登录测试
    @Test
public void testCallbackLoginInfo() throws Exception { GetCallbackLoginInfo(new HttpCallbackListener() {
@Override
public void onFinish(LoginInfo response) {
System.out.println("respons.getReturnUserName=:" + response.getReturnUserName());
System.out.println("respons.getReturnSuccess=:" + response.getReturnSuccess());
System.out.println("respons.getReturnMessage=:" + response.getReturnMessage());
System.out.println("respons.getPhoneNumber=:" + response.getPhoneNumber());
System.out.println("respons.getEamilAddress=:" + response.getEamilAddress());
System.out.println("respons.getSex=:" + response.getSex());
System.out.println("respons.getName=:" + response.getName());
System.out.println("respons.getBirthday=:" + response.getBirthday());
System.out.println("respons.getSchool=:" + response.getSchool());
System.out.println("respons.getOccpuation=:" + response.getOccupation());
System.out.println("respons.getHeadPortati=:" + response.getHeadPortait());
System.out.println("respons.getDescription=:" + response.getDescription());
}

测试结果:

  • 获取用户信息测试
    @Test
public void testCallbackPersonInformation() throws Exception { GetCallbackPersonInformation(new HttpCallbackListener() {
@Override
public void onFinish(PersonalInformation response) {
System.out.println("respons.getName:" + response.getName());
System.out.println("respons.getSex=:" + response.getSex());
System.out.println("respons.getEmilAddress=:" + response.getEmilAddress());
System.out.println("respons.getUserName=:" + response.getUserName());
System.out.println("respons.getBirthday=:" + response.getBirthday());
System.out.println("respons.getDescription=:" + response.getDescription());
System.out.println("respons.getHeadPortati=:" + response.getHeadPortati());
System.out.println("respons.getOccpation=:" + response.getOccpation());
System.out.println("respons.getSchool=:" + response.getSchool());
System.out.println("respons.getPhoneNumber=:" + response.getPhoneNumber());
}

测试结果:

  • 修改用户信息
    @Test
public void testCallBoolean() throws Exception { GetCallbackBoolean(new HttpCallbackListener() {
@Override
public void onFinish(boolean response) {
System.out.println("respons=:" + response);
}

测试结果:

  • 查看帖子详情
    @Test
public void testCallbackPostDetail() throws Exception { GetCallbackPostDetail(new HttpCallbackListener() {
@Override
public void onFinish(PostsDetail response) {
System.out.println("response.getMessageId=:" + response.getMessageId());
System.out.println("response.getTitle=:" + response.getTitle());
System.out.println("response.getCommoditye=:" + response.getCommodity());
System.out.println("response.getContact=:" + response.getContact());
System.out.println("response.getDay=:" + response.getDay());
System.out.println("response.getHour=:" + response.getHour());
System.out.println("response.getDescription=:" + response.getDescription());
System.out.println("response.getLocation=:" + response.getLocation());
System.out.println("response.getPhoto=:" + response.getPhoto());
System.out.println("response.getPostTime=:" + response.getPostTime());
System.out.println("response.getPrice=:" + response.getPrice());
System.out.println("response.getMember=:" + response.getMember());
System.out.println("response.getType=:" + response.getType());
System.out.println("response.getUnit=:" + response.getUnit());
}

测试结果:

  • 获取我的帖子
    @Test
public void testCallbackPosts() throws Exception { GetCallbackPosts(3,new HttpCallbackListener() {
@Override
public void onFinish(Posts[] response) {
for (int i =0 ;i<response.length; i++) {
System.out.println("response["+i+"].getMessageId:"+response[i].getMessageId());
System.out.println("response["+i+"].getTitle:"+response[i].getTitle());
System.out.println("response["+i+"].getPhoto:"+response[i].getPhoto());
System.out.println("response["+i+"].getPostTime:"+response[i].getPostTime());
System.out.println("response["+i+"].getHeadPortait:"+response[i].getHeadPortait());
System.out.println("response["+i+"].getUserName:"+response[i].getUserName()); }
}

测试结果:

结果统计

模拟从服务器返回的所有可能的数据,均能成功接收。

质量评估

由于精心修改过,总体没有什么问题

测试总结

整个测试过程主要是模拟服务器返回数据。结果比较成功,所有数据能成功返回。

但是关于线程的单元测试,查阅了大量的资料也没能得到满意的答案。

所以未能对各个模块进行准确的单元测试。总的来说,相比于Alpha版本,已经明显体会到单元测试的意义及重要性。

一起买beta版模块单元测试的更多相关文章

  1. 一起买beta版PHP单元测试

    一起买beta版PHP单元测试 测试目的 保证代码质量,对各个单元进行测试,可以有效地保证代码的可靠性,让模块在与别的模块整合时出现更少的错误. 单元描述 完成帖子接口 ​ 将"正在进行&q ...

  2. 一起买beta版本文档报告汇总

    一起买beta版本文档报告汇总 031402401鲍亮 031402402曹鑫杰 031402403常松 031402412林淋 031402418汪培侨 031402426许秋鑫 一.Beta版本冲 ...

  3. 一起买beta版UI测试

    一起买beta版UI测试 测试目的 保证代码质量,对各个单元进行测试,可以有效地保证代码的可靠性,让模块在与别的模块整合时出现更少的错误. UI测试 登录模块测试 ​ 登录模拟过程. 发帖模块测试 ​ ...

  4. 一起买Beta版本系列文档

    一起买beta版本文档报告汇总 031402401鲍亮 031402402曹鑫杰 031402403常松 031402412林淋 031402418汪培侨 031402426许秋鑫 一.Beta版本冲 ...

  5. 旅图beta版 asp.net web api 单元测试

    旅图 beta版 asp.net web api 单元测试 测试接口:http://120.27.7.115:1010/Help 测试目的 对每个接口单元进行测试,保证每个接口的可靠性. 单元描述 注 ...

  6. 福大软工 · BETA 版冲刺前准备(团队)

    BETA 版冲刺前准备 队名:第三视角 作业链接 组长博客 应作业要求为了更加顺利地开展beta版本的冲刺,上次的alpha版本展示后,我们组对之前开发过程中存在的各种问题进行了全面的讨论,并对其进行 ...

  7. XE8 & IOS开发之免费证书真机调试:开发证书、AppID、开发授权profile的申请,附Debug真机调试演示(XCode7 Beta版或以上版本适用,有图有真相)

    网上能找到的关于Delphi XE系列的移动开发的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 原创作品,请尊重作者劳动成果,转载请注明出处!!! 注意,苹果发布Xcode ...

  8. 《Bluez 》Beta版强势回归!!!

    Bluez .Beta 巅峰塔防 强势回归! Z.XML为您呈现 经过了第二轮迭代,我们骄傲的宣布,Bluez Beta版本,正式发布. 下载地址:-> 第二轮的迭代是辛苦的,但是不同于其他队伍 ...

  9. “来用”Beta版使用说明

    补发Beta版使用说明.Beta版与alpha版相比去掉了计算器,界面上没有太大变化. 1引言 1 .1编写目的 针对我们发布的Beta版本做出安装和使用说明,使参与内测的人员及用户了解软件的使用方法 ...

随机推荐

  1. 学习SQLite之路(二)

    下面就是真正关于数据库的一些知识了: 20160614更新 参考: http://www.runoob.com/sqlite/sqlite-tutorial.html 1. SQLite创建表: 基本 ...

  2. Learning to Rank 简介

    转自:http://www.cnblogs.com/kemaswill/archive/2013/06/01/3109497.html,感谢分享! 本文将对L2R做一个比较深入的介绍,主要参考了刘铁岩 ...

  3. SWIFT--文档地址

    APPLE官方: https://developer.apple.com/library/prerelease/content/documentation/Swift/Conceptual/Swift ...

  4. 解决"415 Cannot process the message because the content type 'application/x-www-form-urlencoded' was not the expected type 'text/xml; charset=utf-8'"

    wcf basicHttpBinding content-type    text/xml;charset=utf-8 wsHttpBinding  'application/soap+xml; ch ...

  5. mysql安装方法

    Window版本 1.下载 MySQL Community Server 5.7.16 http://dev.mysql.com/downloads/mysql/ 2.解压 如果想要让MySQL安装在 ...

  6. [Google Guava]学习--新集合类型Multiset

    Guava提供了一个新集合类型Multiset,它可以多次添加相等的元素,且和元素顺序无关.Multiset继承于JDK的Cllection接口,而不是Set接口. Multiset主要方法介绍: a ...

  7. [转]java反射机制

    原文地址:http://www.cnblogs.com/jqyp/archive/2012/03/29/2423112.html 一.什么是反射机制         简单的来说,反射机制指的是程序在运 ...

  8. hibernate-DetachedCriteria实现关联表条件复查

    表结果如下 CREATE TABLE `ent_lable` ( `idStr` ) NOT NULL, `pk_1` ) NOT NULL, `pk_2` ) NOT NULL, PRIMARY K ...

  9. shell实现两个数的相加

    刚开始的时候写,一直写不对:看似简单的功能,但是一定要小心:函数的定义: funciton functionName {.....}在functionName和{之间一定有空格啊! 我就是没加空格,就 ...

  10. 使用iframe 或frameset框架退出不成功

    iframe .frameset框架有时登录界面加载在框架当中,但我们想直接到登录界面,这时我们可以使用js来实现.if(window!=top) { top.location.href=locati ...