自动化测试开题报告
自动化测试开题报告
毕业设计(论文)开题报告题目名称:车载系统自动化测试用例的设计与实现
学生姓名:学号:
系/专业:计算机与软件学院 / 计算机多媒体应用班级:
指导教师:
2011年 3 月 1 日
1.本课题的背景及意义
软件测试是软件开发过程中不可或缺的一部分。软件测试工作不但保证了软件质量,而且降低了日后维护成本,也提高了企业信誉和实力。我国软件测试行业的现状有如下趋势:
1. 软件测试重要性和规范性不断提高;
2. 从手工向自动化测试方式的转变;
3. 测试人员需求逐步增大,素质不断提高;
4. 测试服务体系初步形成。
目前绝大多数人都在从事手工测试,但是,在测试的过程中,存在着很大一部分重复的工作,是可以独立开来自动实现的。自动化测试则可以将测试人员从这些乏味的机械式工作中解脱出来,去完成一些自动化测试工具无法完成的用例。一般情况下,如果一项工作重复7次以上,则可以认为,利用自动化测试工具来完成更合适。
在车载系统中,由自动化测试工具来完成这样一项工作,首先是对车载系统的测试脚本的编写;其次,是对脚本的维护,以保证本次及下次测试工作的完成。
可以说,实施测试自动化是软件行重要的发展方向之一。在这个领域走在了前列,无论从企业的核心竞争力还是个人的技能来说,都有巨大的优越性,而国内众多的软件厂商也陆续着手开展这项工作。
由此可见本课题有如下意义:
1. 自动化测试能够提高软件质量,改进测试过程;
2. 自动化测试工具能够替代大量手工测试工作,避免重复测试;
3. 自动化测试工具能够完成大量手工无法完成的测试工作,如并发用户
测试、大数据量测试、长时间运行可靠性测试等。
2.本课题的基本内容及关键问题
基本内容:
1. 车载系统测试模块的深入理解
2. 搭建测试环境
3. 测试用例的设计
4. 测试数据准备
5. 自动化测试脚本的开发
6. 自动化测试用例的执行
7. 测试结果分析
关键问题:
1. 对车载系统模块功能关联性、数据库结构及功能测试方法的把握
2. 自动化测试工具的合理选择
3. 测试数据的完备性
4. 测试脚本的复用性
5. 测试脚本的运行调试
3.本课题调研情况综述
车载系统终端通过GPS将车的相关信息(位置,车速,引擎转速,车厢温度,车门开/关,驾驶违反等)通过中间件保存到数据库服务器,由管理人员从客户端访问后台的Web Service,取得数据库服务器上的数据,从而了解车的状况。
从以下几个方面来分析本课题中车载系统自动测试的必要性及实施:
1. 测试需求中有很大一部分具有稳定性
本文所提到的车载系统,在进入ST工程后,每次修正版本发布均会有几十次处问题需修正。但每次发布的版本中,大概会有90%的测试工作与以前版本的测试工作相同或类似。将这些工作移交给自动化测试工具来完成,则会节省测试人员绝大部分的时间。同时,在一些细节方面的测试,由测试工具来进行会比人力更容易发现问题。如:图片的像素对比等。
2. 自动化测试脚本复用率高
待测系统界面基本稳定,没有大的更改。
3. 项目周期足够长久
车载系统开发项目始于2001年10月,至今已将近十年,对于一个已经成立了十年之久的项目来说,其测试工作量可见一斑。
4. 资源投入相对充裕
为了引入自动化测试,以及对更多的产品进行测试保障,目前项目组在原有测试人员的基础上,正在逐步增加测试方面的人员投入。
5. 产品结构相对复杂
主要包括动态管理、运行管理以及车载机三个方面。其上百个不同的模块为测试问题定位带来了很大的难度,同时也提出了及早发现BUG的课题。
由此可见,在以上环境中可以通过导入自动化测试,来改变完全手工测试的现状,适应测试开发的发展。在此过程中,更能节省人力、时间和硬件资源,提高测试效率。
4.本课题的方案论证
1. 车载系统中自动化测试的可能性
被测系统的稳定性、项目周期的时间、产品结构的复杂、存在大量需要执行回归测试的项目,这些都为车载系统实行自动化测试提供了可能性。
在日报模块下的日报表示模块中,已经可以通过前期调研,使用自动化测试将查询请求输入系统,得出报表并进行检证了。
首先,对此模块进行分析,每发布一个新的版本,其中大部分功能和界面都和上一个版本相似或完全相同,这部分功能特别适合于自动化测试,从而可以达到测试每个特征的目的。
其次,为本模块准备自动化测试的基础数据,可以先根据测试用例,从日报的产生的
时间、日报内容的性质等方面得出所需要的数据的要求来产生数据,以便执行自动测试时的使用。
第三,构建易维护可扩展的自动测试工程,此模块可能会有式样上的变更(当然,只是非常细微的变更)或者是功能的追加,这些内容的变更都会对自动化测试的正常执行产生影响。从脚本的易维护性出发,可以将一些无变更但每次均要测试的内容,作成一个测试项目;而将那些有细节变化的部分,作成另外的项目,这些项目可以分类存放,每次变更后对脚本的维护也可以产生一个版本来对应到项目模样的变更,以供日后参考及使用。
2. 自动化测试在车载系统中的使用,对本项目的积极影响
自动化测试导入后,效率有很明显的提高,如:在动态管理部分,原来需要一人一天完成的工作量,将由自动化测试工具来执行后,只需要一个小时就可以完成。
有些非功能性方面的测试:压力测试、并发测试、大数据量测试、崩溃性测试,人来测试是不可能达到的,这些工作只有交由自动化测试来完成。
由于每次自动化测试运行的脚本是相同的,所以每次执行的测试具有一致性,人是很难做到的,由于自动化测试的一致性,很容易发现被测软件的任何改变。
在开发的末期,进入集成测试阶段,由于每发布一个版本的初期,测试系统的错误比较少,这时开发人员有等待测试人员测试出错误的时间。事实上在叠代周期很短的开发模式中,存在更多的矛盾,但自动化测试可以解决其中的主要矛盾。
5.本课题的参考文献
1. 《软件自动化测试成功之道》,陈能技编,人民邮电出版社
2. 《实用软件测试过程》,[英]JohnWatkins编,机械工程出版社
3. 《软件测试自动化》,[美]daniel J.Mosley,Bruce A.Posey编,邓波
黄丽娟曹青春译,机械工业出版社
4. 《QTP自动化测试实践》,陈能技编,电子工业出版社
5. 《软件自动化测试框架设计与实践》,柳胜编著,人民邮电出版社
6. 《SQL Server 2005数据库应用系统开发技术》,朱如龙主编,机械
工业出版社
指导教师意见:
指导教师:
年月日
因篇幅问题不能全部显示,请点此查看更多更全内容