答:总的来讲,程序没有实现用户的合理需求时就说明有bug。一般产品都会有规格说明书,在规格说明书合理且正确的情况下,这时要是程序和规格说明书不符就是bug;
一条bug记录最基本应该包含bug编号、bug所属模块和版本、bug的优先级、具体的问题描述还有预期行为的描述、bug的级别、还有它的发现日期以及谁发现的、修改日期怎么修改的谁修改的,以及回归结果等,有多个bug同时存在时应该条理化,必要时可以有错误截图和日志,帮助开发人员清晰的定位bug;
新发现一个bug提交到平台还没指派给开发时它的状态是new,分派给开发以后状态就变成了open。 如果开发直接认为这个bug不需要修改,就变成了rejected,要是开发觉得可以延迟修改,就是dalayed。要是直接修改的话,修改完就是fixed,测试回归通过以后就是closed,不通过reopen。
白盒测试也称为结构测试,主要用于检测软件编码过程中的错误,做一些细节性的检查工作。程序员的编程经验、对 编程软件的掌握程度、工作状态等因素都会影响到编程质量,导致代码错误,比如逻辑错误、测试用例不全等。黑盒测试又称为功能测试,主要检测软件的每一个功能是否能够正常使用。在测试过程中,将程序看成不能打开的黑盒子,不考虑程序内部结构和特性的基础上通过程序接口进行测试,检查程序功能是否按照设计需求以及说明书的规定能够正常打开使用即可。灰盒测试介于二者之间,不仅要看功能是否正常,也需要对部分关键代码进行检查。
常见的白盒测试方法有:程序流程路径检查、逻辑条件覆盖等;常见的黑盒测试方法有:等价类划分、边界值法、因果图法等。
黑盒测试就是功能性测试,比较简单,不关心程序的内部实现,从用户角度很容易理解,只看输出结果和预期的是否一致,它的主要测试方法有等价类边界值、因果图、错误推测,它的优点是执行起来比较快,不关心内部细节,缺点是很多程序路径都没有被测试到,这就会存在隐藏问题,测试用例不清晰的话,测试很难执行。
白盒测试是结构性测试,需要去关注程序的源代码和它的内部逻辑结构,主要测试方法包括代码检查、程序编译、路径覆盖、逻辑覆盖、循环覆盖、静态结构分析等,它能仔细考虑软件的实现,对代码的测试比较彻底,能揭示隐藏在代码中的错误,因为测试基于代码,只能知道开发人员实现的对不对,而不能得知设计是否正确,系统庞大时测试成本机会很高。
主要包括白盒测试(逻辑覆盖、循环覆盖、基本路径覆盖)和黑盒测试(等价类、边界值、错误推测法、因果图法、场景法、状态图、随机测试)
测试模型有四种,vwhx,常用的有v模型和w模型,
v模型以编码为分界点,明确的标注了测试过程中存在的不同测试类型,开发阶段和测试阶段有明确的对应关系;但它仅仅把测试过程放在需求分析、系统设计之后的一个阶段,忽视了测试对需求的分析和验证;
w模型由两个v模型组成,代表了开发和测试两条线并行;测试的对象不仅仅是程序,需求设计同样也要测试,有利于尽早全面的发现问题;但需求、设计、编码等活动被视为是串行的,测试和开发活动也保持着一种线性的前后关系,上一阶段完全解除,才可正式开始下一阶段的工作不能够很好的支持迭代的开发模型,,无法支持敏捷开发模式;
单元测试:单元测试是对软件组成单元进行测试。其目的是检验软件基本组成单位的正确性。测试的对象是软件设计的最小单位:模块。Findyou又称为模块测试,一个单元测试是用于判断某个特定条件(或者场景)下某个特定函数的行为。(测试内容:模块接口测试、局部数据结构测试、路径测试、错误处理测试、边界测试)
集成测试:(集成测试也称联合测试、组装测试,将程序模块采用适当的集成策略组装起来,对系统的接口及集成后的功能进行正确性检测的测试工作。主要目的是检查软件单位之间的接口是否正确。方法是测试片段的组合,并最终扩展进程,将您的模块与其他组的模块一起测试。最后,将构成进程的所有模块一起测试。测试内容:模块之间数据传输、模块之间功能冲突、模块组装功能正确性、全局数据结构、单模块缺陷对系统的影响
系统测试:将软件系统看成是一个系统的测试。包括对功能、性能以及软件所运行的软硬件环境进行测试。系统测试的目的是对最终软件系统进行全面的测试,确保最终软件系统满足产品需求并且遵循系统设计。测试内容:功能、界面、可靠性、易用性、性能、兼容性、安全性等
验收测试:验收测试是部署软件之前的最后一个测试操作。它是技术测试的最后一个阶段,也称为交付测试。总结验收测试的目的是确保软件准备就绪,按照项目合同、任务书、双方约定的验收依据文档,向软件购买都展示该软件系统满足原始需求。验收测试的目的是确保软件准备就绪,并且可以让最终用户将其用于执行软件的既定功能和任务,即软件的功能和性能如同用户所合理期待的那样。测试内容:同系统测试(功能...各类文档等)
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删