【软件测试基础】之软件测试分类

.软件测试分类介绍

            

1.按照开发阶段分类

         .单元测试
            又称模块测试,针对软件设计中的最小单位--程序模块,进行正确性检查的测试工作。单元测试需要从程序的内部结构出发设计测试例。多个模块可以平行地独立进行单元测试。(单元定义:C中指一个函数,java中指一个类,在图形化的软件中,单元一般指1个窗口,1个菜单)

        .集成测试

            又叫组装测试,通常在单元测试的基础上,将所有程序模块进行有序的、递增的测试。重点测试不同模块的接口部分。

        .系统测试

            指的是将整个软件系统看为一个整体进行测试,包括对功能、性能、以及软件所运行的软硬件环境进行测试。 系统测试在系统集成完毕后进行测试,前期主要测试系统的功能是否满足需求,后期主要测试系统运行的性能是否满足需求,以及系统在不同的软硬件环境中的兼容性等。

2.按照是否查看源代码

         .黑盒测试(black-box testing)

            又称数据驱动测试,完全不考虑程序内部结构和内部特性,注重于测试软件的功能需求,只关心软件的输入数据和输出数据。

         .白盒测试(white-box testing)

             指的是把盒子打开,去研究里面的源代码和程序结构。

            在软件公司,往往采用黑盒测试&白盒测试相结合的方式。

                ---软件的整体功能和性能进行黑盒测试

                ---软件的源代码采用白盒测试

          .灰盒测试

               灰盒测试是介于白盒测试与黑盒测试之间的一种测试,既可保证黑盒的关注点又可掌控白盒的内部结构,但不会去对内部程序功能和运作做详细了解,灰盒测试结合了白盒测试和黑盒测试的要素。

3.按照是否运行分类

           .静态测试(static testing)

                指不实际运行被测软件,而只是静态地检查程序代码、界面或文档中可能存在的错误过程。

         .动态测试(dynamic testing)   

                指实际运行被测程序,输入相应的测试数据,检查实际输出结果和预期结果是否相符的过程。 

        .验收测试

                软件正式版本推出之前的几个版本,需要有人测试一下,看看是不是有问题。在开发该软件的公司内部由该公司内部人员测试的称为:Alpha测试,Alpha测试主要看有没有功能确实或系统错误,Alpha测试完后一般不会有大问题了。然后把软件拿给用户测试,称为:beta测试,主要是看用户对软件外观、使用方便等的反应。这么多的测试版一方面为了最终产品尽可能地满足用户的需要,另一方面也尽量减少了软件中的bug。然后做过一些修改,成为正式发布的候选版本时,叫做gamma(又叫做RC  --Release Candidate)。

            简单来说,阿尔法测试主要是测试人员在开发环境下的测试,贝塔测试是在实际环境中的测试,或者公司内部人员在模拟真实环境中的测试。

                .α测试(Alpha testing)是内测版本,即现在所说的CB,此版本表示该软件仅仅是一个初步完成品,通常只是在软件开发内部交流,也有很少一部分发布给专业测试人员。一般而言,该版本软件的bug较多,最好不要安装。

                .β测试(Beta testing)是公测版本,是对所有用户开放的测试版本。该版本相对于α版已有了很大的改进,消除了严重的错误,但还是存在着一些缺陷,需要经过大规模的发布测试来进一步消除。这一版本通常由软件公司免费发布,用户可从相关的站点下载。通过一些专业爱好者的测试,将结果反馈给开发者,开发者们再进行有针对性的修改。该版本也不适合一般用户安装。

                .γ测试(Gamma testing)是软件正式发行的候选版。与即将发行的正式版相差无几,成为正式发布的候选版本。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
禁止转载,如需转载请通过简信或评论联系作者。

相关阅读更多精彩内容

友情链接更多精彩内容