首页 > 其他分享 >章一 软件测试的背景

章一 软件测试的背景

时间:2023-03-28 11:01:09浏览次数:43  
标签:章一 软件开发 背景 软件缺陷 说明书 文档 软件 软件测试


章一 软件测试的背景

一、软件失败的术语
缺点defect,偏差variance,故障fault,失败failure,问题problem,矛盾inconsistency,错误error,特殊feature,事件incident,缺陷bug,异常anomaly。
二、软件缺陷的定义
1、产品说明书(product specification):是软件开发小组的一个协定。它对开发的产品进行定义,给出产品的细节、如何做、做什么、不能做什么。
满足下列5个规则之一才能称发生了一个软件缺陷(software bug):
1)软件未出现产品说明书要求的功能;
2)软件出现了产品说明书指明不应该出现的错误;
3)软件实现了产品说明书未提到的功能;
4)软件未实现产品说明书虽未明确提及但应该实现的目标;
5)软件难以理解、不易使用、运行缓慢。
注意:在运用这五条测试规则时应记住下面这几点:要全面,最重要的是要客观评价,并非所有测试发现的缺陷都要修改。
2、导致软件缺陷的最大原因是产品说明书。
在许多情况下,说明书没有写。其它原因是说明书不够全面、经常修改,或者整个开发小组没有很好的沟通。
为软件做计划是极其重要的,如果没做好,软件缺陷就会出现。
软件缺陷的第二大来源是设计。
三、软件测试员的工作:
软件测试员的目标是发现软件缺陷,尽可能早地找出软件缺陷,并确保其得以修复。
大多数成熟的公司都把软件测试视为高级技术工程职位。
四、软件测试员应具备的素质:
1)他们是群探索者;
2)他们是故障排除员;
3)不放过任何蛛丝马迹;
4)具有创造性;
5)追求完美者;
6)判断准确;
7)注重策略喝外交;
8)善于说服。

章二  软件开发的过程

要想成为好的软件测试员,至少要对软件开发的全过程有个总体了解。
一、软件设计文档
1)结构文档:描述软件整体设计的文档,包括软件所有主要部分的描述以及相互之间的交互方式。
2)数据流图:表示数据在程序中如何流动的正规示意图。有时称为泡泡图(bubble chart),因为它是用圆圈和线画的。
3)状态转换图:把软件分解为基本状态或者条件的另一种正规示意图,表示不同状态间转换的方式。
4)流程图:用图形描述程序逻辑的传统方式。
5)代码注释:便于维护代码的程序员轻松掌握代码的内容和执行方式。
二、测试文档
它是完整的软件产品的一部分。
1)测试计划(test plan):描述用于验证软件是否符合产品说明书和客户需求的整体方案。包括质量目标、资源需求、进度表、任务分配、方法等。
2)测试用例(test cases):列举测试的项目,描述验证软件的详细步骤。
3)缺陷报告(bug reports):描述执行测试用例找出的问题,通常记录在数据库中。
4)测试工具和自动测试(test tools and automation):必须有文档记录。
5)度量、统计和总结(metrics,statistics,summaries):测试过程的汇总。采用图形、表格和报告等形式。
三、软件产品的组成部分:
帮助文件、用户手册、样本和示例、标签和不干胶、产品支持信息、图标和标志、错误信息、广告和宣传材料、安装、说明文件。
错误提示信息是软件产品最容易忽视的部分,通常有程序员而不是训练有素的高手来写。
四、软件项目成员
1)项目经理、程序经理、监制人员:自始至终驱动整个项目。通常负责编写产品说明书、管理进度、进行重大决策。
2)体系架构师、系统工程师:产品小组中的技术专家。
3)程序员、开发人员或者代码制作者:设计、编写软件并修复软件中的缺陷。
4)测试员、质量保证员(Quality Asssurance,QA):负责找出并报告软件产品中的缺陷。
5)技术作者、用户协助专员、用户培训专员、手册编写员、文案专员:编制软件产品附带的文件和联机文档。
6)配置管理员、构建员:负责把程序员编写的代码及技术作者些的全部文档资料组合在一起,合成为一个软件包。
五、软件开发生命周期模式
1)大爆炸模式:优点是简单,计划、进度安排和正规开发过程几乎没有,所有精力都花在开发软件和编写代码上。
2)边写边改模式:适合意在快速制作而且用完就扔的小项目。
3)瀑布模式:强调产品的定义,各步骤分立无交叉,无法回溯。开发过程有完整细致的说明。缺点是测试仅在最后执行。
4)螺旋模式:总体思想是一开始不必详细定义所有细节。从小开始,定义重要功能,努力实现这些功能,接受客户反馈,然后进入下一阶段,重复上述过程,直至得到最终产品。
螺旋模式每一次循环包括6个步骤:
1)确定目标、可选方案和限制条件;
2)明确并化解风险;
3)评估可选方案;
4)当前阶段开发和测试;
5)计划下一阶段;
6)确定进入下一阶段的方法。
螺旋模式中包含了一点瀑布模式(分析、设计、开发和测试的步骤)、一点边写边改模式(螺旋模式的每一次)和一点大爆炸模式(从外界观察)。
六、敏捷软件开发(Agile Software Development)
敏捷软件开发也叫快速原型开发、极限编程开发 或者 进化开发等。
敏捷软件开发的目的,是:
1)通过过程和工具理解个人和交流的作用;
2)通过全面的文档理解运行的软件;
3)通过合同和谈判得到客户的协作;
4)在计划的执行中做出对变更的响应。
也即,在一方面有价值的时候,更应评价它在另外一方面的价值。
 

标签:章一,软件开发,背景,软件缺陷,说明书,文档,软件,软件测试
From: https://blog.51cto.com/prettycms/6154237

相关文章

  • linux shell基础--终端显示字体背景和字体颜色\033[0;30m
    ANSI标准ANSI标准规定了一种所有终端共享的指令集,并要求用ASCII的数字字符传递所有数值信息,用于控制linux终端上的光标位置、颜色和其他选项。在文本中嵌入确定的字节序列......
  • ParallaxViewPager:ViewPager的视差背景效果
    这是一个针对技术开发者的一个应用,你可以在掘金上获取最新最优质的技术干货,不仅仅是Android知识、前端、后端以至于产品和设计都有涉猎,想成为全栈工程师的朋友不要错过!所谓......
  • 软件测试之道二
    有时一个地方的bug太多,并且反复修改也没有改好,那么就停止测试,让开发仔细思考问题所在并且重新设计代码。要根据实际的开发来调整自己的测试过程,有些项目就是不能提供完整......
  • 文字背景图
    <p>填充文字</p>p{width:1000px;height:1000px;color:#fff;overflow:hidden;font-size:14px;line-height:14px;margin:0auto;background......
  • 软件测试常见的七种认识误区
    随着软件测试对提高软件质量重要性的不断提高,软件测试也不断受到重视。但是,国内软件测试过程的不规范,重视开发和轻视测试的现象依旧存在。因此,对于软件测试的重要性、......
  • el-table根据不同的值设置单元格背景色
    <!--表头设置cell-class-name--><el-tablev-loading="loading":data="lists"border:cell-class-name="addClass"style="width:100%">//......
  • vscode杂谈-背景配置
    这里我要开一个新的篇章,就是关于vscode的一些配置问题,因为最近的一些个人原因,不得不使用vscode完成一些项目。但我必须强调一点,我极度不推荐初学者使用vscode写代码,因为它......
  • 软件测试--详细判断电话号码
    目录一、作业要求二、需求分析1、电话号码类型2、座机号码地点3、手机号码的种类常用运营商虚拟运营商号段物联网号段卫星电话号段其它号段4、手机地点5、国外号码6、测试......
  • 设置Button按钮背景不透明
    解决:1.在res/values/中找到两个theme文件,将其中这一行:<stylename="Theme.LoginInSystem"parent="Theme.MaterialComponents.DayNight.DarkActionBar">都改为:......
  • 如今软件测试人员的作用和重要性
    在软件开发领域中,测试人员是至关重要的一环。他们的主要职责是通过各种测试方法来检测和识别软件缺陷,确保软件在发布之前达到高质量标准。那么今天就由我来为大家介绍一下,软......