软件可测试性简谈

摘要:软件的质量属性,是软件的重要组成部分,软件是否能够可靠运行,是否能够满足用户的需要,是否能够可持续扩展,都取决于软件的质量属性的好坏。可测试性是软件质量属性的其中一个,可测试性的好坏,决定着软件开发中BUG发现的难易程度,在软件开发阶段发现并解决BUG是成本最少的修复BUG方式,因此可测试性是至关重要的一环。
关键词:质量属性;可测试性;软件;代码

(Shijiazhuang Railway University, Chang'an District, Shijiazhuang City, Hebei Province China, 057100)
Abstract: The quality attribute of software is an important part of software. Whether the software can run reliably, whether it can meet the needs of users and whether it can be extended continuously depends on the quality attribute of software. Testability is one of the attributes of software quality. The quality of testability determines the difficulty of bug discovery in software development. Finding and solving bugs in software development stage is the least cost way to fix bugs, so testability is a crucial part.
Key words: Quality attribute; testability; software; code
可测试性,是指通过测试揭示软件缺陷的难易程度。特别地,假设软件中至少有一个错误,软件在下次测试运行时不能正常工作的可能性。可测试性的响应度量处理的是测试在发现缺陷方面的效率以及想要达到某个期望的覆盖范围,需要用多长时间进行测试。

可测试性的战术属性则由如下几部分构成:刺激源、刺激、环境、响应、响应度量。接下来我们将会围绕其中几个方面进行简要的阐述。

一、属性组成
1.1刺激源
从字面意思上来看,刺激源就是一个发出刺激的源地址,而对于可测试性这一属性来说,刺激软件提高可测试性的来源可能是:单元开发人员、系统集成人员、系统验证人员、测试人员、用户。
对于单元开发人员来说,开发完一个单元模块,相应的就需要测试自己所开发的单元模块能否正常运行,因此就产生了需求---可以高效快速的测试;对于系统集成人员,集成完多个单元模块后,则需要对大模块进行测试,而多个模块之间的依赖、调用则比较复杂,所以需要可以简易、快速的测试;而系统验证人员则是对开发完成的系统进行测试,该测试阶段属于系统测试,是对整个系统进行测试,需要发现系统中存在的问题,而不需要关心具体的实现细节,只需要专注于BUG的寻找即可,这就需要简单的测试;而对于测试人员来说,则需要对系统进行完整专业的测试,虽然是专业的测试人员,但是也需要一个可以快速测试的环境;而用户来说,则是需要一个对于他来说相对简单的环境。
1.2刺激
刺激则是刺激源发出的一系列刺激,对于单元开发人员、系统集成人员来说,每当开发完成一个单元模块,就需要进行测试,这就对应了概念中的已完成的一个阶段,而单元模块开发完成,就相当于一个子系统开发完成。而对于系统验证人员以及测试人员来说,他们测试的是一个完整的系统,则是一个对应的即将要交付的系统。而用户则需要对开发团队交付的系统进行测试。
这些刺激源所发出的刺激,促进了下一阶段的进行。
1.3制品
而制品则是相当于每个模块开发完成的单元模块,这个制品是一个小制品,对应的是单元开发人员以及系统集成人员所负责的模块,而下一模块则是大模块的集成,即集成为一个完整的系统,相当于一个大制品。
1.4 环境
对于环境来说,则相对的简单了,一般来说对于开发人员等,则是开发环境,则是本机或者公司的服务器当中,这一方面毋庸置疑。而用户则是需要根据其实际的使用场景来选择使用环境,可能是独立的电脑,也有可能是公司的电脑群。
1.5 响应
响应则是对于人员的一些动作所进行的一系列响应,如进行测试用例的使用的话,则可以输出测试人员或者用户所期望的结果,如果出现BUG也可以响应的提示出是哪一方面出现的问题,这便是响应。
1.6 响应度量
响应度量则是对响应的一个评测,将响应进行数字化,可以进行客观的评价,例如已执行的可执行语句的百分比、最长测试链的长度、执行测试的时间、准备测试环境的时间。而一般来说,时间是最为重要的一个因素。

二、结语
可测试性是有关实验假说的一种性质,包括二个方面:在逻辑上的性质,包括偶然性、可废止性或是可证伪性,也就是说逻辑上此假说是有可能出现反例;在实务上的性质,意思是指若存在反例,反例有再现性。简单来说,若假说有可测试性,表示实际上有可能可以根据结果判断假说的正确与否。
参考文献
[5]https://baike.baidu.com/item/软件可测试性/22722798?fr=aladdin

上一篇:C#操作注册表全攻略


下一篇:How to install Camtasia Studio 2020