对软件测试的理解
Posted henanleon
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了对软件测试的理解相关的知识,希望对你有一定的参考价值。
测试的目的:尽可能多的发现缺陷,比如功能的错误,性能低下,用户体验。
测试的思路:先假设程序存在什么缺陷,然后执行程序来发现缺陷。
测试类型:白盒测试,黑盒测试。
白盒测试:看得见的程序内部结构,测试源程序的逻辑结构和实现细节。白盒测试必须由开发人员独立执行,因为测试人员无法理解代码内部逻辑。
黑盒测试:看不见的程序内部结构,按照规格来测试程序是否符合要求。黑盒测试必须由独立测试小组执行,因为开发人员难以做到客观公正。
主要发现以下问题:是否有不正确或遗漏了的功能;在接口上,能否正确的接收输入,能否输出正确的结果; ·是否有数据结构错误或外部信息访问错误;性能上是否能够满足要求;是否有初始化或终止性错误; 黑盒测试需要在所有可能的输入条件和输出条件中确定测试数据,以检查程序是否都能产生正确的输出;有时测试数据量太大,是不现实的。
如:测试一个模块时,白盒测试:要对所有代码进行单步跟踪测试,关注的是程序的内部细节。黑盒测试:只需测试模块的接口是否要求,关注的是程序的外部实现。
α测试和β测试 :在软件交付使用之后,用户将如何实际使用程序,对于开发者来说是不知道的。通常在软件发布上市之前需要进行α测试和β测试。 α测试是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的测试。α测试必须是开发人员和测试小组共同参与完成。
α测试:公司内部对软件的测试。
α测试的目的是评价软件产品的FLURPS(功能、局域化、可使用性、可靠性、性能和支持)。尤其注重产品的界面和特色。 α测试可以从软件产品编码结束之时开始,或者在模块(子系统)测试完成之后开始,也可以在确认测试过程中产品达到一定的稳定和可靠程度之后再开始。
β测试:产品正式发布之前,公司外部邀请用户进行测试。
α、β、λ常用来表示软件测试过程中的三个阶段,α是第一阶段,一般只供内部测试使用;β是第二个阶段,已经消除了软件中大部分的不完善之处,但仍有可能还存在缺陷和漏洞,一般只提供给特定的用户群来测试使用;λ是第三个阶段,此时产品已经相当成熟,只需在个别地方再做进一步的优化处理即可上市发行。
测试内容:
1、功能测试:检查软件的功能是否符合要求。枚举方法:构造合理的输入,看是否有期望的输出。边界值方法:采用定义域的边界值进行测试。
2、容错性测试:检查软件在异常情况下的反应,容错性好的软件会确保系统不发生难以预料的崩溃。方法:构造一些不合理的数据看系统的反应(错误的数据类型或定义域外的值)。
3、性能与效率测试:测试软件的速度与对资源的利用率。极限测试:持续不停地给服务器发送请求看是否会死掉,给程序输入特别大的数据看是否能吃得消。获取测试的绝对值(如数据的传输率):记录运行环境对软件的影响。获取测试的相对值(如该软件和其他软件相比快多少倍):确保被测试的几个软件具有相同的软件和硬件环境中。
4、易用性测试:用户不用看用户手册,即具有好的易用性。
5、文档测试:检查文档的正确性,完备性,可理解性。
以上是关于对软件测试的理解的主要内容,如果未能解决你的问题,请参考以下文章