软工视频(21~25)-软件测试

软件测试在程序员对每一个模块的编码之后先做程序测试,再做单元测试,然后再进行集成(综合或组装)测试,系统测试,验收(确认)测试,平行测试,人工测试,其中单元测试的一部分已在编码阶段就开始了,测试横跨开发与测试两个阶段,又有不同的人员参加,测试工作本身是复杂的。

据统计测试工作量要占软件开发总成本的40%到50%以上。

从这张图中我们可以看到,软件测试设计概念和原则、技术两方面的内容。

首先来说概念和原则。

概念:软件测试时对软件计划、软件设计、软件编码进行查错和纠错的活动(包括代码执行活动与人工活动),软件测试其实包括程序测试。软件确认和程序确认分别是它们的广义概念。在这里需要补充一点软件错误,软件错误主要是有一些功能错和系统错。功能错是需求分析设计不完整而引起的,系统错是总体设计错误而引起的。

测试原则:(1)测试前要认定被测试软件有错,不要认为软件没有错

(2)要预先确定被测试软件的测试结果

(3)要尽量避免测试自己编写的程序。

(4)测试要兼顾合理输入与不合理输入数据。

(5)测试要以软件需求规格说明书为标准。

(6)要明确找到的新错与已找到的旧错成正比。

(7)测试是相对的,不能穷尽所有的测试,要据人力物力安排测试,并选择好的测试用例与测                                     试方法。

(8)测试用例留作测试报告与以后的反复测试用,重新验证纠错的程序是否有错。

再来说技术。

测试目标:

(1)测试时为了发现程序中的错误而执行程序的过程;

(2)好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案;

(3)成功的测试是发现了至今为止尚未发现的错误的测试。

测试方法:按照测试过程是否在实际应用环境中来分有静态分析与动态分析。

测试方法有分析方法(包括静态分析法与白盒法)与非分析方法(称黑盒法)。

白盒法是通过分析程序内部的逻辑与执行路线来设计测试用例,进行测试的方法,白盒法也称逻辑驱动方法。黑盒法是功能驱动方法,仅根据I/O数据条件来设计测试用例,而不管程序的内部结构与路径如何。说白了就是白盒法就是透明的,对其内部能操作。黑盒法因为不透明,所以只能进行整体外部操作。

设计测试方案:语句覆盖、判定覆盖和条件覆盖是重点。

时间: 2024-11-05 11:46:23

软工视频(21~25)-软件测试的相关文章

【软工视频】软件、软件工程

现在正在学习软工视频,总结了一下什么是软件和软件工程的由来. 看到这张图,"软件"这个模糊的玩意儿就在我的大脑里异常清晰起来,so easy!我就不多说些什么了.. 软件的开发是一段历史,分别经历了程序设计.系统设计和软件工程.软工技术的发展,源于软件危机,可以说是软件危机敲开了软件工程的大门.. 看到这张图,我也没什么好说的,很清晰,也不值得写什么了,足矣!!大家可能会发现,红色的字体看不清,没关系,那不是重点.. 重点是软件工程的三要素:开发方法.工具和过程.它们三个共同构成了软件

【软工视频】维护

对于一个系统或软件来说,最难得部分不是软件开发阶段,而是维护阶段.下面一张图,让我们认识到维护的重要性! 由上图可知,维护在软件生存期所占的比例在70%以上..  困难 1.理解别人写的程序困难,困难程度软件配置成分减少而迅速增加(之前的博客<[软工视频]测试>中已写过软件配置) 2.要维护的软件往往没有合适的文档或资料不全 3.绝大多数软件设计时没有考虑将来的修改 4.维护不是一项吸引人的工作 5.软件人员经常流动,维护不能依靠原开发人员 6.追踪软件的建立过程非常困难,或根本做不到 流程

【软工视频】软件、软件project

如今正在学习软工视频,总结了一下什么是软件和软件project的由来. 看到这张图,"软件"这个模糊的玩意儿就在我的大脑里异常清晰起来,so easy.我就不多说些什么了. . 软件的开发是一段历史.分别经历了程序设计.系统设计和软件project. 软工技术的发展,源于软件危机,能够说是软件危机敲开了软件project的大门.. 看到这张图.我也没什么好说的,非常清晰.也不值得写什么了,足矣! ! 大家可能会发现,红色的字体看不清,没关系,那不是重点. . 重点是软件project的

【软工视频】软件开发方法与模型

这篇博客将软件开发方法与模型一起写,是想给它们进行比较,分析它们的不同.. 开发方法 通过看自己的软工视频和查阅百度百科,发现软件的开发方法有很多种,下面是我在百度百科上的截图: 就目前而言,我需要学习的是结构化开发方法(SASD).面向数据结构开发方法和面向对象的开发方法.由于面向数据结构和面向对象的开发方法没有进行系统的学习,所以我现在要写结构化开发方法.结构化开发方法也会贯穿[软件视频]这一系列博客,希望大家给我指正! SASD是面向数据流的开发方法,下面一张图是我对它的总结: 感觉自己的

(软工视频总结)之软件维护和用户界面设计

软件维护是软件开发中的最后阶段,也是最长的阶段,不能小觑呀!软件维护所花费的人力.物力和财力在软件开发周期中占很大部分. 软件维护说白了就是一个在软件投入使用后,为了满足用户的新需求或者发现的新漏洞而对软件进行修改的过程. 软件维护的目的是:1.修改错误.2.增加软件的功能和性能.3.使软件更适应时代,使用寿命延长.4.让软件能更好的为人民服务. 软件维护的类型包括:1.适应性维护 2.完善性维护 3.改正性维护 适应性维护是为了适应发展,使软件适应外部的各种条件及环境的改变而做出的相应的修改.

(软工视频总结一)让我们把知识连起来

我们学习的知识都是有关系的,我们不能把一些的新的东西都要放进自己的脑子里,而是将自己知道的知识拿出来,和书上的对应-- 我们大多数都参加了<信息系统开发与管理>这一门自考,其实想想,软件工程和信管真的很像,所以说软工对于我们来说并不是一项新的内容,而是我们熟悉的. 软工视频首先就纠正了我们一个误区:软件不单纯是一个程序,而是程序.数据和相关文档的完整集合.由于多数开发人员只重视开发,不重视维护,所以导致软件在开发和维护过程中遇到了一系列严重问题,称此为软件危机,表现为产品不符合用户的实际需要.

软工视频(27~32)-面向对象技术

这次主要说面向对象技术,面向对象,在之前就已经接触过,那么这里我来比对着学习一下. 大道至简,其实面向对象讲来讲去就这两样东西,一是它是什么,二就是它是怎么来的. 一.先说它是什么吧,也就是他的概念.这里我想先回忆一下之前学到的这些东西.首先是VB,它主要是面向过程,面向对象的东西并不多.C++呢,面向对象这一块还是非常重要的,不管是学习还是考试,这都是一个重点.基本上一提到面向对象,那就是对象.类.继承.多态.封装.再来看看我们软工中说到的面向对象: 面向对象=对象+类+继承+通信. 在说这个

软工视频(26)-软件维护

无论是什么,在制作出来以后都要后期的维护,联想的售后,冰箱的三包凭证,汽车的维修--当然,软件也不例外,在开发出来后,维护是非常重要的环节. 我们先来理解软件维护是什么,其实就是对开发出来软件产品进行修改.它有三类修改方法,一半都是完善性维护,剩下的就是适应性维护和改正性维护各占一半,其实还有及其的一小部分涉及到其他的维护.至于这些概念,稍后分解. 维护可不是那么省事的,前面介绍过软件生存期,其实就是软件从无到有的过程,那么维护在这中间占用了70.8%.可见其分量之重.自然而然工作量就大了,但是

“软工视频”第三章总结

"当我们做一个项目时,可能客户口头告诉你他想要做一个什么东西,或者给了你一些文档告诉你这就是需求.就根据几句口头讲述,或者一些文档,很难知道到底具体需要做什么.这时候就要对需求进行挖掘,以得到功能列表,或者用例图,并作出软件需求分析."这段话我觉得虽然直白,但是确实是把软件需求分析说的很清晰.下面是我对第三章理解的思维导图:   其实这一章视频就讲了两个方面:一任务过程:二是分析方法.它们的结果都是为了一个文档,就是软件需求规格说明书. 一.任务和过程 1. 任务 1)认清问题,分析资