11 负载测试:应用程序在负载较重的情况下,测试它的承载能力 。
12 压力测试:负载和机能测试。交替运用常用的测试术语,描述函数在负载较重的情况下的测试结果。
13 性能测试:负载测试和压力测试。时而术语常用的测试 。
14 可用性测试:测试软件的用户界面友好 。
15 安装/卸载测试:当软件系统进行软件安装或者卸载的过程中进行的测试。
16 回收率试验:试验时,系统崩溃,硬件故障或其他灾难性问题,系统是否具有良好的恢复能力。
17 安全性测试:测试系统自我防护能力,并且防止内部或外部的非法访问,故意的破坏等。
18 兼容性测试:测试软件在硬件/软件/操作系统/网络等特殊环境中能否具有较好表现。
19 验收测试:告知消费者满意的软件 。
20 比较测试:对相关的方面的好处与错误进行的比较。
21 α测试:会在软件开发时结束这个测试 。
22 β测试:进行这样的测试,在开发测试工作大体上是完整的。
我在储信资产管理公司一开始做的就是手动的黑盒测试,然后是多种测试方法的综合运用。
其实很多时候,在测试的过程中,有些时候是好多种方法交叉在一起进行的,或者一种方法中还包含有其他方法。有时候划分不到太细。最简单的例子:有时黑盒包含可用性测试。象这种包含与被包含的现象是会经常出现的。我原来所在的公司全名叫上海储信资产管理公司,主要产品是安卓APP投资产品,如图 1.1:
财富口袋产品的首页
财富口袋的产品页面和投资管理页面,如图1.2 和 图 1.3 :
财富口袋首页界面 财富口袋登录界面
我是做软件测试方面的工作和提供相关技术支持的,本论文就是对软件测试相关的内容进行介绍。围绕这款软件,我做了很多测试工作,由于我所做的关于软件测试的文档的很多资料都留在了原公司,不能擅自动用,所以很多样本和截图都没有加进论文中。
2 软件测试的意义与作用
软件测试的目的和意义是为了确保广告产品达到既定的标准和需求。测试工程师是应用测试设备,依据测试内容、需求和性能测试产品的程序,即根据它写出相应的测试设备的测试要求,具体分析评估在测试的过程中所可能遇到的一系列的缺陷,测试case时,不定期的检查所发现的问题,对此加以解决,来保证产品符合要求。对一个系统进行人工或自动手段的测试过程时,旨在确认它符合特定的要求,或对预期结果和实际结果之间的差别能够清楚明白。它能帮助我们准确认识一个完整软件开发过程的质量,这是 SQA的重要领域。同时,它还能体现软件开发过程的质量精度。这是SQA的一个重要部门。
软件测试的作用分为如下四点:
1、完成产品质量的综合评估,软件产品发布,软件部署、软件产品标识委托方和受托方的纠纷的仲裁,和其他决策信息;
2、要通过持续的测试提供连续的、迅速的反馈,从而在全部开发过程中及时准确地对产品质量进行改进,并降低各种返工,达到对软件开发的成本的有效控制;
3、在测试时,如果发现即将交付产品的缺点,特别是尽可能多地发现各种重大缺陷,减少或清除产品质量风险,扩展市场份额,有效提高客户对产品的满意度和忠诚度;
4、发现和对软件产品模型综述的根本缺陷或不足识别缺陷分析,避免以后犯同样的错误,类似的产品,实现缺陷预防的目的。
2.1 理论根据及统计数据
软件测试在一个软件生命周期中发挥非常重要的作用,其原因是多方面的。根据Boehm的统计数据,对开发的总投资中,用于测试的用度占有了总用度的百分之三十到百分之五十。在软件生命周期的每一阶段应覆盖试验,验证结果可以达到既定的目标,从而尽快找到并改正错误。如果不是在测试的早期阶段,误差扩散经常延误将造成巨大的困难来测试最终的产品。已有数据讲明,在开发项目中,测试的工作量常常在开发总工作数目中占比达到百分之四十。和开发的所有成本相比,用于测试的成本占据所有成本的大约一半。如果软件文护阶段也考虑和探讨所有的软件生命周期,测试成本,比例可能下降,但实际上二次开发的软件文护工作相当,其中一定还要做很多的前期准备。假如测试的目标是为了挖掘尽量多的弊端,则测试应当对软件繁琐的方面进行追踪和设定。假如测试是为了提高使用的人对该产品的依赖度和相信度,那么我们可以测试具有针对性的那些方面,尽可能的符合用户的规划需求。在这里我想引用Grenford J.梅尔斯软件测试在“艺术”一书中的观点: 软件测试方法的应用与研究(3):http://www.youerw.com/jisuanji/lunwen_36224.html