定义:
软件测试即使用人工或自动的手段来运行或测定某个软件系统的过程,其目的是在于检验它是否符合既定的需求或者是弄清实际与预期之间的差距,包括发现软件程序中的错误、对软件是否符合设计要求,进行有关验证以及评估软件的质量。最终实现对高质量的软件系统交给用户的目的。
软件测试类型:
根据项目流程划分,软件测试可分为:单元测试、集成测试、系统测试、验收测试
2)集成集成:也叫组装测试或联合测试。在单元测试的基础上,将所有模块按照设计要求(如根据结构图)组装成为子系统或系统,进行集成测试。
3)系统测试(system testing):是对整个系统的测试,将硬件、软件、操作人员看做一个整体,检验它是否有不合符系统说明书的地方。其目的是为了验证最终软件系统是否满足用户规定的需求,这种测试可以发现系统分析和设计中的错误。如安全测试是测试安全措施是否完善,能不能保证系统不受非法侵入。再例如,压力测试是测试系统在正常数据量以及超负荷量(如多个用户同时存取)等情况下是否还能正常地工作。
系统测试又可分为功能测试、性能测试、安全测试、兼容性测试。
功能测试:即对产品的各功能进行验证,根据测试用例,逐项测试,检查产品是否符合达到用户要求的功能。
性能测试:性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。负载测试和压力测试都属于性能测试,两者可以结合进行。通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。压力测试是通过确定一个系统的瓶颈或者不能接受的性能点,来获得系统能提供的最大服务级别的测试。
安全测试:是在IT软件产品的生命周期中,特别是产品开发基本完成到发布阶段,对产品进行检验以验证产品符合安全需求定义和产品质量标准的过程。其目的在于提升IT产品的安全质量,尽量在发布前找到安全问题予以修补降低成本,验证安装在系统内的保护机制能否在实际应用中对系统进行保护,使之不被非法入侵,不受各种因素的干扰。
兼容性测试:是指检查软件之间能否正确地进行交互和共享信息。随着用户对来自各种类型软件之间共享数据能力和充分利用空间同时执行多个程序能力的要求,测试软件之间能否协作变得越来越重要。软件兼容性测试工作的目标是保证软件按照用户期望的方式进行交互。
按测试技术划分:软件测试可分为黑盒测试、白盒测试、灰盒测试
黑盒测试:可以把被测的软件看做一个黑盒子,我们不关心盒子里面的结构是什么样子的,只关心软件的输入数据和输出,检查程序功能是否按需求规格说明书的规定正常使用。黑盒测试又分为功能测试和性能测试。
1)功能测试:可以包括逻辑功能测试、界面测试、易用性测试、安装测试、兼容性测试。
2)性能测试:可以包括一半性能测试、稳定性测试、负载测试等。
白盒测试:就是把盒子打开,去研究里面的源代码和程序结构。
灰盒测试:介于黑盒测试和白盒测试之间的测试,多用于集成测试阶段,不仅关注输入、输出的正确性,同时也关注程序内部的情况。
根据软件是否运行可分为静态测试和动态测试
静态测试:是指不运行程序,对程序和文档进行分析与检查;静态测试技术又称为静态分析技术。
动态测试:通过运行程序进行检查、分析程序的执行状态和程序逻辑的外部表现。
按其他分类方式还有可以分为:回归测试、冒烟测试、随机测试等
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!