第四次团队作业:魔幻宝贝成长之软件实现与测试
2017-12-17 18:33
453 查看
摘要:本文介绍基于上一次作业的软件设计,实现并测试魔幻宝贝成长这款App。代码仓库:https://coding.net/u/sijixiaqiudong/p/Mohuan/git
第一部分:简易快速使用指南
1、在使用前先进行注册登入。
2、进入主界面,刚开始宠物为一颗蛋。然后你可以开始跑步来增加你的步数用来在商城购买商品提高宠物的成长值。当成长值足够等级就会提升,宠物就会进化。
3、在我的里面可以查看详细的个人信息和宠物信息。
第二部分:代码实现(采用http数据传输)
1、myeclipse部分
在myeclipse里我们使用MVC这种结构方式,前端传值,servlet接受后调用control,control调用data,data返回值给control,control返回值给servlet,servlet返回值给前端。
servlet下的代码
control下的代码
data下的代码
2、eclipse部分
我们使用eclipse创建安卓项目
查看个人信息实现发送数据和接收数据的代码
布局的代码
3、mysql部分
第三部分:软件测试
1、在这个方面由于目前整个项目还没有完全写好,只完成了注册登录,界面设计部分和基本数据传输功能。只给出了部分的框架。
2、基于现阶段的测试,可以成功的注册以及登录,以及查看个人信息和宠物信息。
3、在以后的完善过程中,需要测试的主要几点有:计步功能的实现(允许有误差);宠物由静态改为动态。
第一部分:简易快速使用指南
1、在使用前先进行注册登入。
2、进入主界面,刚开始宠物为一颗蛋。然后你可以开始跑步来增加你的步数用来在商城购买商品提高宠物的成长值。当成长值足够等级就会提升,宠物就会进化。
3、在我的里面可以查看详细的个人信息和宠物信息。
第二部分:代码实现(采用http数据传输)
1、myeclipse部分
在myeclipse里我们使用MVC这种结构方式,前端传值,servlet接受后调用control,control调用data,data返回值给control,control返回值给servlet,servlet返回值给前端。
servlet下的代码
if(operate.equals("selectPetInfo")) //通过parser解封获取前端的操作,查看宠物信息 { String user_id=parser.getFirst(information);//通过parser解封获取前端传来的第一个值 selectPetInfo ob=new selectPetInfo(); String ss=ob.selectPetInfo(user_id);//selectPetInfo处理在里面调用data返回的数据 System.out.println(ss);/软件测试 out.println(ss);//返回给前端 }
control下的代码
public String selectPetInfo(String user_id) { dbPetInfo db=new dbPetInfo(); List<Map<String, Object>> list = new ArrayList<Map<String, Object>>(); list=db.selectPetInfo(user_id); String ss=JsonTools.createJsonString("address", list); return ss; }
data下的代码
public List<Map<String, Object>> selectPetInfo(String user_id) { List<Map<String, Object>> list = new ArrayList<Map<String, Object>>(); try { String sql = "select pet_name,pet_lev,pet_grow from pet_info where user_id=?"; //因为这里我们这里每个人只有一个宠物,所以简易使用user_id作为主键 PreparedStatement pst=conn.prepareStatement(sql); pst.setString(1, user_id); ResultSet rs = pst.executeQuery(); while (rs.next()) { Map<String, Object> map = new HashMap<String, Object>(); String pet_name = rs.getString("pet_name"); String pet_lev = rs.getString("pet_lev"); String pet_grow = rs.getString("pet_grow"); map.put("pet_name", pet_name); map.put("pet_lev", pet_lev); map.put("pet_grow", pet_grow); list.add(map); } rs.close(); pst.close(); } catch (SQLException e) { e.printStackTrace(); } return list; }
2、eclipse部分
我们使用eclipse创建安卓项目
查看个人信息实现发送数据和接收数据的代码
public void run(){ String Web_result=""; String url = IP.URL; List<Para> list = new ArrayList<Para>(); list.add(new Para("information", information)); Web_result= HttpTools.postVisitWeb(url, list); Message msg=new Message(); msg.obj=Web_result; handler.sendMessage(msg); } }.start(); } }
Handler handler=new Handler(){ @Override public void handleMessage(Message msg){ if(msg.obj==null){ Toast.makeText(getApplicationContext(), "网络连接异常", Toast.LENGTH_SHORT).show(); return; } List<Map<String, Object>> petInfo= new ArrayList<Map<String, Object>>(); String ss=msg.obj.toString(); petInfo = JsonUtils.listKeyMaps("address",ss); for(int i=0;i<petInfo.size();i++){ Map<String, Object> cw=new HashMap<String, Object>(); cw=petInfo.get(i); pet_name=or.get("pet_name").toString(); pet_lev=or.get("pet_lev").toString(); pet_grow=or.get("pet_grow").toString(); } initpetInfo(); } };
布局的代码
<RelativeLayout android:id="@+id/cwinfor" android:layout_width="match_parent" android:layout_height="48dp" android:background="@drawable/btn_list_item_bg" android:clickable="true" android:paddingLeft="12dp" > <ImageView android:layout_width="24dp" android:layout_height="24dp" android:layout_alignParentLeft="true" android:layout_centerVertical="true" android:layout_marginLeft="12dp" android:src="@drawable/cw" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:layout_marginLeft="20dp" android:layout_toRightOf="@id/iv_xiangce" android:text="宠物信息" android:textColor="#353535" android:textSize="16sp" /> </RelativeLayout>
3、mysql部分
-- ---------------------------- -- Table structure for pet_info -- ---------------------------- DROP TABLE IF EXISTS `pet_info`; CREATE TABLE `pet_info` ( `pet_id` varchar(5) NOT NULL COMMENT '宠物编号', `pet_name` varchar(10) NOT NULL COMMENT '宠物名称', `pet_code` char(1) NOT NULL COMMENT 'sex', `pet_lev` int(11) NOT NULL COMMENT '宠物等级', `pet_grow` int(11) NOT NULL COMMENT '成长值', `user_id` varchar(11) DEFAULT NULL COMMENT '用户编号', PRIMARY KEY (`Pet_id`) ) ENGINE=InnoDB DEFAULT CHARSET=gbk;
第三部分:软件测试
1、在这个方面由于目前整个项目还没有完全写好,只完成了注册登录,界面设计部分和基本数据传输功能。只给出了部分的框架。
2、基于现阶段的测试,可以成功的注册以及登录,以及查看个人信息和宠物信息。
3、在以后的完善过程中,需要测试的主要几点有:计步功能的实现(允许有误差);宠物由静态改为动态。
相关文章推荐
- 第四次团队作业-软件实现与测试
- 第四次团队作业:软件实现与测试
- 第四次团队作业:软件实现与测试
- 软件工程--趣盒--第四次团队作业--软件实现与测试
- 团队第4次作业:软件实现与测试
- 第四次团队作业:网络订餐平台实现与测试
- 1704班3组—高级软件测试作业—如何计算团队成员贡献分
- 第二次团队作业:魔幻宝贝成长之需求分析
- 17秋 软件工程 团队第四次作业 系统设计
- 软件质量保证与测试(作业三)
- 软件质量与测试2018春第0周作业1:开设博客
- 《敏捷软件测试:测试人员与敏捷团队的实践指南》学习体会(二)
- 浅谈软件测试团队的建设
- 软件工程作业单元测试
- 团队作业9——测试与发布(Beta版本)
- 17秋 软件工程 团队第五次作业 Alpha 测试报告
- 第四次作业_02单元测试
- 软件测试工程师成长之路:掌握软件测试九大技术主题
- 团队作业--软件介绍