青岛理工大学软件测试报告院(系):计算机工程学院专业:软件工程姓名:杨传龙班级:软件122学号:201207231题目:小区家政管理系统起迄日期:2015.5.15-2015.6.15设计地点:计算机工程学院机房指导教师:第1章概论1.1课题背景家政服务管理系统是典型的信息管理系统,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面.对于前者要求建立数据一致性和完整性强,数据安全性好的数据库.而对于后者则要求应用程序功能完备,易使用等特点。随着计算机技术的高速发展,人们对计算机的依赖性越来越强,特别是用计算机开发的数据库以及数据管理系统在生活应用中表现得更为突出,为此开发此系统。通过使用家政服务管理系统,使家政服务店的管理工作系统化、规范化、自动化、简易化、智能化,从而达到提高家政服务管理效率的目的。系统开发采用Oracle公司的MySql,利用其强大的可视化界面功能及对数据库的支持,先构造一个原型,逐步增加功能,最终满足需求。1.2开发工具本系统利用Swing(Java)技术设计编写,以Mysql作为后台数据库,利用jdbc访问数据库实现各种功能。1.2.1JAVA简介java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。Java编程语言的风格十分接近C语言、C++语言。Java是一个纯粹的面向对象的程序设计语言,它继承了C++语言面向对象技术的核心。Java舍弃了C语言中容易引起错误的指针(以引用取代)、运算符重载(operatoroverloading)、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在Java1.5版本中,Java又引入了泛型编程(GenericProgramming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。1.2.2Swing(Java)简介Swing是一个为Java设计的GUI工具包。Swing是JAVA基础类的一部分。Swing包括了图形用户界面(GUI)器件如:文本框,按钮,分隔窗格和表。Swing提供许多比AWT更好的屏幕显示元素。它们用纯Java写成,所以同Java本身一样可以跨平台运行,这一点不像AWT。它们是JFC的一部分。它们支持可更换的面板和主题(各种操作系统默认的特有主题),然而不是真的使用原生平台提供的设备,而是仅仅在表面上模仿它们。这意味着你可以在任意平台上使用JAVA支持的任意面板。轻量级元件的缺点则是执行速度较慢,优点就是可以在所有平台上采用统一的行为。可扩展性Swing使用了高度模块化的架构,可以通过接口的方式使用各种定制框架来扩展Swing。用户可以通过Java的继承机制重写原始的组件来实现自己的代码。Swing是一个基于组件的框架,所有的组件都是从javax.swing.JComponent类继承来的。Swing对象通过异步方式发送事件,具有边界属性,并且会响应该组件的一系列方法。Swing组件是JavaBeans组件,和JavaBeans组件架构完全保持一致。可定制性Swing提供了可编程渲染模型,使用户可以对渲染细节进行控制。一般来看,Swing组件的视觉效果是一些通用元素的组合,比如外框、边距、窗口装饰等等。典型的情况是,用户通过编写代码,指定边框、颜色、背景、透明度等属性来定制一种通用Swing组件(如JTable)。核心组件则会用这些定制的属性来进行绘制。此外,也完全可以制作出非常特殊的GUI控件或是高度自定义的视觉效果。1.3功能模块(1)客户管理模块功能需求管理员可以添加客户信息,并可以对添加的客户信息进行查询、修改、删除。(2)员工管理模块功能需求管理员可以批量添加员工信息,并可以对添加的员工信息进行查询、修改、删除。(3)服务类别管理模块功能需求管理员可以添加服务类别信息,并可以对添加的服务类别信息进行修改、查询、删除。(4)用户请求管理模块功能需求不同的管理员负责处理不同的服务类型请求,管理员可以查看本类的服务请求和服务记录,并且可以处理并修改用户的请求,把用户的请求标记为已完成(5)客户请求管理模块功能需求客户可以产看自己的请求1.4系统模块图小区物业管理系统分为管理员系统和小区业主系统。管理员系统分为业主信息管理、员工信息管理、服务类型管理、业主请求处理四个模块;小区业主系统分为员工、服务信息管理和预约处理两个模块。小区家政服务管理系统管理员子系统姓名职务客户信息管理员工信息管理服务类别管理客户服务请求处理服务类别信息查看员工信息查看新增请求用户名密码修改密码修改第二章测试目标2.1测试目的1.通过对测试结果的分析,得到对软件质量的评价2.分析测试的过程,产品,资源,信息,为以后制定测试计划提供参考3.评估测试测试执行和测试计划是否符合4.分析系统存在的缺陷,为修复和预防bug提供建议2.2测试内容该文档的目的是描述小区家政服务管理系统客户端系统测试的总结报告,其主要内容包括:系统环境简介1.软件名称:小区家政服务管理系统2.软件功能:本系统有两种角色:小区业主,管理员。详细划分如下:(1)小区业主:查看服务记录,预约服务,更改密码,查看员工信息和服务信息(2)管理员:对小区业主信息、服务信息、员工信息的增删查改,修改用户名密码,查看服务记录,处理客户的服务请求3.用户:求职者、招聘单位、管理员4.开发者:张飞系统数据度量系统结果评估用户群:1.项目管理人员2.测试人员3.小区业主范围:该文档定义了客户端系统测试的结果,总结了测试客户端的服务项目查询、服务信息、员工信息的增删查改、密码修改的基本功能,以及支持大数据量并发访问的性能,给出了测试的结论。第三章软件测试计划3.1测试目的1.练习和掌握软件测试管理的一般过程与步骤;2.掌握测试管理的人工过程和能够通过相关管理软件实现以下工作:a)配置软件资产信息、软件需求、软件模型和缺陷数据库;b)创建和管理多个测试组和用户;c)配置测试环境、编写详细测试计划、安排测试进度;d)设计测试脚本、测试用例;e)实施测试、执行测试和评估测试。3.2测试选题选题一:关于小区业主功能模块的测试;选题二:对小区家政管理员功能模块的测试。3.3测试人员杨传龙:软件测试计划及相关资料的编写与收集,对特定问题编写程序代码,并对其进行黑盒测试,对特定问题编写程序代码,并对其进行白盒测试。3.4测试方法对于选题一,使用黑盒测试技术,测试内容包括等价类划分测试、边界值分析测试、决策表方法使用。对于选题二,使用白盒测试技术,测试内容包括语句覆盖测试、分支覆盖测试、条件覆盖测试、分支/条件覆盖测试、条件组合覆盖测试及基本路径测试。3.5测试资料测试规划是基于产品的功能,目的是检查程序各个功能是否能够实现,并检查其中的功能错误,这种测试方法称为黑盒测试(Black-boxTesting)方法。黑盒测试又称为功能测试、数据驱动测试和基于规格说明的测试。它是一种从用户观点出发的测试,一般被用来确认软件功能的正确性和可操作性。黑盒测试的基本观点是:任何程序都可以看作是从输入定义域映射到输出值域的函数过程,被测程序被认为是一个打不开的黑盒子,黑盒中的内容(实现过程)完全不知道,只明确要做到什么。黑盒测试主要根据规格说明书设计测试用例,并不涉及程序内部构造和内部特性,只依靠被测程序输入和输出之间的关系或程序的功能设计测试用例。黑盒测试的特点:(1)黑盒测试与软件的具体实现过程无关,在软件实现的过程发生变化时,测试用例仍然可以使用。(2)黑盒测试用例的设计可以和软件实现同时进行,这样能够压缩总的开发时间。黑盒测试的具体技术方法:边界值分析法、等价类划分法、因果图法、决策表法。白盒测试测试规划基于产品的内部结构进行测试,检查内部操作是否按规定执行,软件各个部分功能是否得到充分使用,则这种测试方法称为白盒测试(White-boxTesting)方法。白盒测试又称为结构测试、逻辑驱动测试或基于程序的测试,一般用来分析程序的内部结构。白盒测试将被测程序看作一个打开的盒子,测试者能够看到被测源程序,可以分析被测程序的内部结构,此时测试的焦点集中在根据其内部结构设计测试用例。白盒测试要求是对某些程序的结构特性做到一定程度的覆盖,或者说这种测试是“基于覆盖率的测试”。通常的程序结构覆盖有:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、路径覆盖。黑盒测试与白盒测试的比较软件测试过程单元测试:针对每个单元的测试,以确保每个模块能正常工作为目标。集成测试:对已测试过的模块进行组装,进行集成测试。目的在于检验与软件设计相关的程序结构问题。确认(有效性)测试:是检验所开发的软件能否满足所有功能和性能需求的最后手段。系统测试:检验软件产品能否与系统的其他部分(比如,硬件、数据库及操作人员)协调工作。验收(用户)测试:检验软件产品质量的最后一道工序。主要突出用户的作用,同时软件开发人员也应有一定程度的参与。数据整理测试所得到的用例测试报告、BUG报告,需要进行反馈和最后的归档,归档的工作按照项目计划中所规定的内容进行,反馈的工作在测试项结束后,整理成测试总结报告后进行,具体的日期,在项目计划中有规定。不同阶段的测试,都需要重复以上的步骤。其他必要的数据整理的工作,由项目经理在进行过程中进行安排。第四章测试内容4.1单元测试4.2集成测试4.3系统测试第五章缺陷的统计与分析第六章测试结论与建议6.1测试结论:1.这套小区家政服务管理系统安全性相对较好,不存在过多的缺陷,基本能够满足各项功能的需求。2.通过多种测试方法和工具对各个模块进行了测试,并且在测试时采用了多个测试用例,历遍所有的功能,测试的结果说服性很强。3.该软件功能较全面,能够完成项目创建,设置,任务分配的功能,各个模块分工明确,共同完成项目的管理。4.但是它仍存在一些缺陷,基本上是在数据输入判定,分析等方面,这些缺陷并不是很明显,据推测应该是系统在开发设计过程中程序开发人员的疏忽造成的。5.系统预测统计模型经过多项严格测试,通过多种测试用例的测试,发现一些不足和问题,对系统整体运行不会造成太大的影响,不过在今后的开发中需要改进和提升。6.2建议:此管理系统基本上能够通过测试,与目标功能总体上是一致的,相对来说可以算得上是一款功能全面的系统,在今后的开发过程中注重系统的稳定性,不断完善各项功能,特别是对数据处理的准确性和及时性。当然此系统中的存在的缺陷都必须得到相应的解决,如果不能那么就会影响用户体验过程,从而失去用户的信任,如果失去用户信任这对一款软件的打击会是毁灭性的,所以更要注重对用户信息的反馈,这样可以更好的让这款管理系统满足用户的需求。第七章总结该系统设计并实现了小区物业管理系统管理模块的基本功能,包括员工信息管理、客户信息管理、服务项目信息管理、用户请求处理、服务记录处理,同时还实现了密码修改等附加功能。采用了面向对象的思想,用Javaswing技术制作界面,采用java语言编写后台代码,以MySql作为后台数据库,选用jdbc访问数据库,将整个系统分为表现层、业务逻辑层、数据访问层,使得系统更容易开发与维护。通过对系统各个功能和性能的测试,本系统运行基本稳定,性能可靠,基本指标达到了用户的要求,具有较好的易用性和实用性。但由于这次设计的时间比较仓促,其中不免会有些纰漏,比如在程序的实现上还不够严谨,出错处理不够完善等多方面问题,这些都有进一步改善。通过本次对家政管理系统图形界面的设计,我学到了很多东西,无论在理论上还是实践中,都得到不少的提高,例如:在此次设计中,我觉得我学到的最重要的就是,在设计任何一个系统之前都应该好好花时间把这个系统的总体设计给清楚的记录下来,这样有利于在做系统的过程中思路清晰明确,这对总体设计是有帮助的。同样,这个思想对我以后的学习和工作都有一种巨大的帮助。第二章需求分