Web应用软件测试方法探析
2019-04-17李艳丽
摘 要:严格的进行软件测试能够对软件质量的提升起到很好的促进作用。随着当前在整个软件行业Web应用软件应用越来越广泛,从而也使得软件测试技术逐渐成为了整个行业中研究的重点。本文首先针对软件测试的相关概念以及软件测试的具体内容进行了简要的分析,并针对传统软件与Web应用软件进行了对比分析,并针对Web应用软件具体测试相关内容进行了深入探讨,对整个Web应用软件的测试研究能够提供有价值的参考作用。
关键词:软件测试;Web应用软件;测试内容;测试方法
引言:
随着当前网络技术的快速发展,在社会发展的各个领域Web应用软件实现了广泛的普及,但是,Web应用软件存在的质量问题很有可能会给各个企业带来巨大的经济损失,因此,充分保障一般应用软件的质量就显得非常重要。鉴于此,针对Web应用软件进行良好的测试就能发挥出更加重要的作用,但是传统的测试方法以及具体的测试内容并不能够很好的适用于Web应用软件的开发,因此必须要针对Web应用软件测试方法。
1 软件测试定义及具体内容
所谓的软件测试就是充分利用合理的测试工具,并严格按照测试方案设计来针对软件中存在的问题进行深入的分析和评估,在针对软件执行相应的测试内容后,必须要对其故障问题进行后续跟踪,这样才能充分保证软件开发产品能够适应实际需求。
在实际进行软件测试的过程中主要的内容就是验证和确认两个环节,而软件测试的验证环节主要是针对软件能否顺利的实现预期设定的功能而从事的一系列测试活动,在此基础上,就能够充分保证软件能够完全按照既定的方式来达到预期的目标。整个验证工作主要包括以下一些:
(1)针对软件产品在整个生存周期内一部分特定的阶段,产品是不是能够达到其上一个阶段所设置的功能需求。
(2)充分利用形式理论方法来针对软件产品的程序形式正确性进行测试,查看其是否能够满足产品预期设计所约定的归程。
(3)针对软件产品严格的实施审查、测试、检查、审计等各项活动,并针对软件产品在实际应用过程中表现出来的处理、服务以及相关的文件能否达到产品设计规定需求來进行判断,并通过判断结果提供相应的报告。
2 传统软件测试内容及方法
2.1 单元测试
在整个软件测试过程中单元测试属于一种最微小规模的软件测试,其主要是针对软件中的某一项功能或者某一个代码块来进行测试,通常情况下单元测试主要通过程序员来进行测试,而不需要通过测试员来具体执行,这主要是因为针对单元进行测试的时候必须要对软件的内部程序设计以及程序编码等各个细节知识信息详细了解。在整个软件测试过程中单元测试工作难度也相对较大,如果不能充分保障整个软件的应用系统具备良好的体系结构设计,在实际进行单元测试的过程中甚至还需要开发出相应的测试驱动器模块或者开发出专用的测试套具。
2.2 集成测试
所谓的集成测试主要是针对整个软件应用系统内部所有的部件进行联合测试,从某种程度上来讲,集成测试的属于单元测试在逻辑上的进一步扩展。集成测试的主要目的是针对组合单元中存在的各种问题进行识别。在实际的测试过程中通常情况下都会利用自顶向下集成、自底向上集成、突击式等几种集成测试方法。
2.3 系统测试
在具备了针对整个软件系统需要说明书的黑盒类测试后才能具体实施系统测试,在实际进行系统测试的过程中,必须要将整个软件系统中的所有联合性附件都包含在内,该测试通常情况下都是应用在对整个软件应用系统进行测试的过程中,其最终的测试目的是为了充分验证整个软件系统是否能够满足需求规格的实际定义,并导出整个软件系统内部中与需求规格存在差别或者矛盾的地方。在整个系统测试过程中将会将系统的功能、系统压力、系统负荷、系统兼容性、系统安全性等各个方面都涵盖在内。
3 Web应用软件测试内容以及测试方法
Web应用软件具有其自身的特殊性,在实际中对Web应用软件进行测试的过程中,所有的测试方法以及测试内容都是在传统测试方法基础上形成,但是也具备了自身的特殊性[2]。
3.1 功能测试
3.1.1 链接测试
链接测试主要是针对Web应用软件是否具备了链接,应用软件内部链接的具体位置是否保持正确来进行测试。
3.1.2 表单测试
在实际进行表单测试的过程中,必须要针对服务器数据保存的正确性进行进一步验证,与此同时还要针对整个在后台运行的所有程序,是否能够实现正确解释或者实现对各种信息的正确使用进行验证,此外,在整个测试过程中还必须要站队各种数据的正确性以及数据中存在的异常情况处理等进行严格的验证和测试。
3.1.3 Cookies测试
Cookies测试主要是针对Cookie运行的正确性进行测试,与此同时还会针对上述数据信息进行加密,另外,Cookies测试还必须要针对整个测试过程中验证的累积次数是否正确进行确认。
3.1.4 设计语言测试
而测试内容主要是针对在不同的测试语言环境下,对客户端或者服务器的运行情况所产生的影响进行测试。
3.1.5 数据库测试
数据库测试主要是针对所有数据的一致性以及输出等问题进行测试。如果用户在实际的应用过程中所提供的表单信息不能够保证正确性,就很有可能会引起最终数据出现不一致的现象;另外,如果在程序设计过程中出现问题或者是网络速度出现问题也很有可能会引起最终输出数据出现差错。
3.2 性能测试
在针对Web应用软件进行测试的过程中,性能测试主要需要进行负载、压力、连接速度等几项内容的测试。
3.2.1 连接速度测试
连接速度测试主要是针对在网络或者用户较多的情况下是否会出现页面超时、网页速度运行过慢或者是否会出现运行过程中出现数据丢失等情况进行测试。
3.2.2 负载测试
负载测试主要是针对整个Web应用系统处于要用特定的负载级别情况下运行的时候,整个系统是否能够在充分保证用户实际需求的情况下实现正常运行。而在测试过程中进行复杂级别设置的时候可以针对同一时间段内所有的用户数量以及实时在线处理的数据量进行设定。
3.2.3 压力测试
压力测试主要是针对整个系统在运行过程中对限制以及故障恢复的能力的测试。通俗的讲,就是要针对整个Web应用系统处于何种环境下会出现崩溃现象。在系统实际运行过程中,一些不法分子经常会利用错误的数据负载来迫使用户的web应用系统崩溃,这样就可以在系统重启过程中来获取信息,因此,针对web应用系统进行压力测试具有非常重要的作用。
4 结束语
总而言之,随着当前Web应用软件应用范围越来越广,针对Web应用软件的测试也显得更加重要,而由于web应用软件具有一定的特殊性,在实际测试的过程中及测试过程传统测试方法存在一定的差异性,因此必须要针对应用软件测试进行深入探讨。
参考文献:
[1]田伟. 模型驱动的web应用SQL注入安全漏洞渗透测试研究[D].南开大学,2012.
[2]潘诗瑶. 基于NodeJS进行自动化单元测试中mock平台的设计与研究[D].北京邮电大学,2017.
[3]许瀚青. 基于Watir的Web应用软件自动化测试的研究与实现[D].东华大学,2016.
作者简介:
姓名:李艳丽 性别:女 民族:汉 籍贯:河北省故城县 出生年月:1982年5月21日 文化程度:本科 现有职称:助理工程师 研究方向:软件测试