学习做软件测试——如何到20K!干货分享-了解详情

软件测试是使用人工或自动的手段来运行或测定某个软件系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别
软件测试的概括
软件测试方法的目的包括:发现软件程序中的错误、对软件是否符合设计要求,以及是否符合合同中所要达到的技术要求,进行有关验证以及评估软件的质量。最终实现将高质量的软件系统交给用户的目的。而软件的基本测试方法主要有静态测试和动态测试、功能测试、性能测试、黑盒测试和白盒测试等等。
软件测试方法众多,比较常用到的测试方法有等价类划分、场景法,偶尔会使用到的测试方法有边界值和判定表,还有包括不经常使用到的正交排列法和测试大纲法。其中等价类划分、边界值分析、判定表等属于黑盒测试方法;只对功能是否可以满足规定要求进行检查,主要用于软件的确认测试阶段。白盒测试也叫做结构测试或逻辑驱动测试,是基于覆盖的全部代码和路径、条件的测试,通过测试检测产品内部性能,检验程序中的路径是否可以按照要求完成工作,但是并不对功能进行测试,主要用于软件的验证。
学习做软件测试——如何到20K!干货分享-了解详情_第1张图片

软件测试方法的分类
静态测试:静态测试的含义是被测程序不运行,只依靠分析或检查源程序的语句、结构、过程等来检查程序是否有错误。即通过对软件的需求规格说明书、设计说明书以及源程序做结构分析和流程图分析,从而来找出错误。例如不匹配的参数,未定义的变量等。 [5]
动态测试:动态测试与静态测试相对应,其是通过运行被测试程序,对得到的运行结果与预期的结果进行比较分析,同时分析运行效率和健壮性能等。这种方法可简单分为三个步骤:构造测试实例、执行程序以及分析结果。
黑盒测试:之所以被称为黑盒测试是因为可以将被测程序看成是一个无法打开的黑盒,而工作人员在不考虑任何程序内部结构和特性的条件下,根据需求规格说明书设计测试实例,并检查程序的功能是否能够按照规范说明准确无误的运行。其主要是对软件界面和软件功能进行测试。对于黑盒测试行为必须加以量化才能够有效的保证软件的质量。
白盒测试:其与黑盒测试不同,它主要是借助程序内部的逻辑和相关信息,通过检测内部动作是否按照设计规格说明书的设定进行,检查每一条通路能否正常工作。白盒测试是从程序结构方面出发对测试用例进行设计。其主要用于检查各个逻辑结构是否合理,对应的模块独立路径是否正常以及内部结构是否有效。常用的白盒测试法有控制流分析、数据流分析、路径分析、程序变异等,其中逻辑覆盖法是主要的测试方法。
灰盒测试:灰盒测试则介于黑盒测试和白盒测试之间。灰盒测试除了重视输出相对于出入的正确性,也看重其内部表现。但是它不可能像白盒测试那样详细和完整。它只是简单的靠一些象征性的现象或标志来判断其内部的运行情况,因此在内部结果出现错误,但输出结果正确的情况下可以采取灰盒测试方法。因为在此情况下灰盒比白盒高效,比黑盒适用性广的优势就凸显出来了。
学习做软件测试——如何到20K!干货分享-了解详情_第2张图片

学习软件测试推荐书籍
《Selenium自动化测试》,《Google软件测试之道》,《软件自动化测试开发》,《软件测试的艺术》,《软件测试技术实战》
(个人推荐,有兴趣的可以看看学习下,希望对你有帮助哈)

软件测试的重要性
软件测试的目的就是确保软件的质量、确认软件以正确的方式做了你所期望的事情,所以他的工作主要是发现软件的错误、有效定义和实现软件成分由低层到高层的组装过程、验证软件是否满足任务书和系统定义文档所规定的技术要求、为软件质量模型的建立提供依据。软件的测试不仅是要确保软件的质量,还要给开发人员提供信息,以方便其为风险评估做相应的准备,重要的是他要贯穿在整个软件开发的过程中,保证整个软件开发的过程是高质量的。
软件测试时在软件设计及程序编码之后,在软件运行之前进行最为合适。考虑到测试人员在软件开发过程中的寻找Bug、避免软件开发过程中的缺陷、关注用户的需求等任务,所以作为软件开发人员,软件测试要嵌入在整个软件开发的过程中,比如在软件的设计和程序的编码等阶段都得嵌入软件测试的部分,要时时检查软件的可行性,但是作为专业的软件测试工作,还是在程序编码之后,软件运行之前最为合适。

你可能感兴趣的:(软件测试)