软件测试课初感

  在上课以前,说起软件测试,就连我们这些学了两年多的大学生,也会觉得“测试,不就是用一用,找找编写的时候没有发现的bug,然后就完事了”。

  然而呢,改观就在第一节课上,直到老师老师举出的一些例子后,才发现自己原来错的离谱,要不然也就不会有这一门课了。

  好了,以上为闲谈,下面是收获和一些个人的理解。

  软件测试(software testing),描述一种用来促进鉴定软件的正确性、完整性、安全性和质量的过程。换句话说,软件测试是一种实际输出与预期输出间的审核或者比较过程。软件测试的经典定义是:在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。 

  也就是说,软件测试,所最求的及时软件的质量,并非仅仅"可以用"即可。正式投入使用的软件一定会遇到很多难以想象的情况,所以软件要成型,测试就必不可少。在经历了长时间的发展以后,软件测试在软件开发阶段中也就越来越重要。

  常见的软件测试方法:

  黑盒测试

  在已知产品所应具有的功能,通过测试来检测每个功能是否都能正常使用,在测试时,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数锯而产生正确的输出信息,并且保持外部信息(如数据库或文件)的完整性。黑盒测试方法主要有等价类划分、边值分析、因—果图、错误推测等,主要用于软件确认测试。 “黑盒”法着眼于程序外部结构、不考虑内部逻辑结构、针对软件界面和软件功能进行测试。“黑盒”法是穷举输入测试,只有把所有可能的输入都作为测试情况使用,才能以这种方法查出程序中所有的错误。实际上测试情况有无穷多个,人们不仅要测试所有合法的输入,而且还要对那些不合法但是可能的输入进行测试。

  白盒测试

  知道产品内部工作过程,可通过测试来检测产品内部动作是否按照规格说明书的规定正常进行,按照程序内部的结构测试程序,检验程序中的每条通路是否都有能按预定要求正确工作,而不顾它的功能,白盒测试的主要方法有逻辑驱动、基路测试等,主要用于软件验证。

原文地址:https://www.cnblogs.com/voidsh/p/4338183.html