软件测试基础-概论

软件测试基础-概论1.发展历程1975年JohnGoodEnough和SusanGerhart在IEEE上发表了“测试数据原理(TowrdaTheoryofTestDataSelection)”的文章,软件测试才被确定为一种研究方向。1979年,GlenfordMyers的《软件测试艺术》

大家好,欢迎来到IT知识分享网。

1.发展历程
1975年John Good Enough 和Susan Gerhart在IEEE上发表了“测试数据原理(Towrd a Theory of Test Data Selection)”的文章,软件测试才被确定为一种研究方向。
1979年,Glen ford Myers的《软件测试艺术》(The Art of Software Testing),算是软件测试领域的第一本最重要的专著,Myers作为当时最好的软件测试,其定义是:测试是为发现错误而执行的一个程序或者系统的过程。
1983年,Bill Hetzel在《软件测试完全指南》(Complete Guide Of Software Testing)一书中指出:“测试是以评价一个程序或者系统属性为目标的任何一种活动,测试是对软件质量的度量”。
 2002年,Rick和Stenfan在《系统的软件测试》(System Software Testing)一书中,对软件测试做了进一步定义:“测试是为了度量和提高被测软件的质量,对测试软件进行工程设计、实施和维护的整个生命周期过程”。
 
2.面临的挑战
(1)随着信息化的发展、测试任务越来越繁重。
(2)软件规模越来越大、功能越来越复杂,如何进行充分有效的测试成为难题。
(3)面向对象的开发技术越来越成熟、面向对象的测试技术却刚刚起步。
(4)对于分布式系统整体性能还不能很好的测试。
(5)对于实时系统来说,缺乏有效的测试手段。
(6)随着安全问题的日益突出,信息系统的安全性如何进行有效的测试与评估,成为世界性难题。
 
3.软件测试与软件项目的关系
软件测试是为软件项目服务的。虽然软件测试的目的是为了发现软件中存在的错误,但是,其根本目的是为了提高软件质量,降低软件项目的风险。
软件测试只能证明软件存在错误,而不能证明软件没有错误。
 
4.什么是软件测试
软件测试的经典定义是在规定条件下对程序进行操作,以发现错误,对软件质量进行评估。
简单说,软件测试就是使用手工或者工具对被测对象进行测试操作,从而验证实际结果与预期结果是否存在差异。
软件=文档+数据+程序,所以软件测试应该是对软件过程的文档、数据、以及程序进行的测试,而不仅仅是对程序进行的测试。
 
5.什么是软件质量
2001年,软件“产品质量”国籍标准ISO 9126定义的软件质量包括“内部质量”、“外部质量”、“使用质量”三部分。也就是说,“软件满足规定或潜在用户需求的能力”要从软件在内部、外部、和使用中的表现来衡量。
 
6.软件测与质量保证的区别
测试只是质量保证中的一个环节,软件质量保证和软件测试是软件质量工程的两个不同层面的工作。
  • 质量保证(QA):QA 采用“全面质量管理”和“过程改进”的原理开展质量保证工作,所关注的是岁对质量的检查与测量。QA的工作是软件生命周期的管理以及验证软件是否满足规定的质量和用户的需求,因此主要着眼于软件开发活动中的过程、步骤和产物,而不是对软件进行浦西找出问题或评估。
  • 软件测试:测试关心的是对开发过程的产物以及开发出的软件进行剖析。因此软件测试是保证软件质量的一个重要环节。
 
7.软件测试的目的
测试的目的,是想以最少的人力、物力和时间找出软件中潜在的各种错误和缺陷,通过修正各种错误和缺陷提高软件的质量,回避软件发布后由于潜在的软件缺陷和错误造成的隐患所带来的的商业风险。
 
8.软件测试原则
基于软件测试是为了寻找软件的错误与缺陷,评估与提高软件质量,提出了这样的一组软件测试原则:
  • 所有的软件测试都应追溯到用户需求。
  • 应当把“尽早地和不断地进行软件测试”作为软件测试者的左右铭。
  • 完全测试是不可能的,测试需要终止。(输入量太大、输出结果太对,路径组合太多)
  • 测试无法显示软件潜在的缺陷。
  • 充分注意测试中的群集现象。  经验表明,测试后程序中残存的错误数目与该程序中一发现的错误数目或检错率成正比。根据这个规律,应当对错误群集的程序进行重点测试,以提高测试投资的效益。
  • 程序员应避免检查自己的程序。
  • 尽量避免测试的随意性。
  • 杀虫剂现象:不要过多使用同一条测试案例来对软件进行问题查找,因为软件会产生“抗性”。
  • 某些测试操作依赖于特定的测试环境。
        应该从工程的角度去理解软件测试,它是有组织、有计划、有步骤的活动。
 
 
9.软件测试对象
软件包括程序、数据和文档,所以软件测试并不仅仅是程序测试。软件测试应贯穿于整个软件生命周期中。
在整个软件生命周期中,各阶段有不同的测试对象,形成了不同开发阶段不同类型的测试。需求分析、概要设计、详细设计以及程序编码等各阶段所得到的文档、包括需求规格说明、概要设计规格说明、详细设计规格说明以及源程序,都应成为“软件测试”的对象。
 
在软件编码结束后,对便携的每一个程序模块进行测试,称为“模块测试”或“单元测试”。
在模块集成后,对集成在一起的模块组件进行测试,称为“集成测试”。
在集成测试后,需要检测与正式软件是否满足软件需求说明书中规定的要求,这就称为“确认测试”。
将整个程序模块集成为软件系统,安装在运行环境下,对硬件、网络、操作系统以及支撑平台构成的整体系统进行测试,称为“系统测试”。
 
10.软件的架构
B/S:浏览器-服务器模式
C/S:客户端-服务器模式
 
比较:
(1)标准:BS更标准一些,CS需要在不同的系统上执行
(2)效率:相对来说CS的处理效率更高一些
(3)升级:BS架构只需要将服务器进行更新,前台页面会自动刷新,而CS架构如果想要升级就必须将二端都重新制作,下载安装后才可以使用
(4)安全性:相对于CS架构来说BS的安全性会低一些。
(5)开发成本:因为浏览器不需要我们开发,所以我们认为CS的开发成本相对较高
 
11.浏览器内核
(1)Trident:IE浏览器1995年推出的一款内核
(2)Geoko:目前火狐浏览器使用的内核
(3)blink:由KHTML内核心发展而来,chrome浏览器在使用
(4)webkit:由KHTML内核发展而来,safari浏览器在使用
(5)presto:这个内核当前已经停止更新,用于oprea(欧鹏浏览器),现在这款浏览器已经向chrome看齐
 
12.常见的图片类型
(1)jpg:颜色信息比较丰富的一种图片格式
(2)png:可以支持透明的一种图片格式
(3)gif:支持动图,占用体积小
(4)psd:分层的图片(常见于psd设计稿)
 
13.服务器域名
(1)服务器:一台电脑,安装相应的服务器软件,来为我们的用户提供服务操作
(2)URL:所谓的URL我们就认为是用户写在浏览器地址栏里的一长串,它由协议+域名+端口号+路径+具体的文件名称组成:统一资源定位符
 
14.域名的基本介绍
域名就是为了方便用户去记忆而设计的一个名字,一般需要花钱购买,它的组成一般分为3个部分:
(1)一级域名:一级域名就是最后一个点号后面的内容 .com .cn .net
(2)二级域名:二级域名就是一级左边,baidu,一般就是需求方自己设计,一级域名和二级域名连在一起应当是全世界唯一
(3)三级域名:三级域名一般都是用户自定义,最常见的就是www
注:域名和服务器都需要花钱购买,国内常见的服务商有:万网 新网 西部数据 美橙互联……
 
 

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/34486.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信