如何设计OpenStack测试用例?
作者:网络转载 发布时间:[ 2016/8/19 11:04:07 ] 推荐标签:测试用例 OpenStack
一.软件测试
软件测试和软件开发一样,是一个典型的系统工程。它包括了持续集成(CI)、持续测试(CT)、持续交付(CD)和持续部署(CD)等诸多方面,每个方面又都包括各子内容。通过这些系统工程,团队可以保持在短周期内生产出有价值的软件,并且保证能够可靠地在任何时间内发布软件。
1.软件测试技巧
软件测试虽然辛苦,但是掌握了一定的技巧之后将使你事半功倍。比如,如下的一些方法。
1)边界测试,测试用户输入框中数值的大数和小数,以及为空时的情况。
2)非法测试,例如在输入数字的地方输入字母、特殊字符等。
3)跟踪测试,跟踪一条数据的流程,保证数据的正确性。
4)在开始测试时应保证数据的正确性,然后在从系统中找出各种BUG。
5)接口测试,程序往往在接口的地方很容易发生错误,要在此模块测试勿掉以轻心。
6)代码重用测试,在开发过程中有些模块功能几乎相同,程序员在重用代码时可能忘记在原有代码上修改或修改不全面,而造成的错误。也是功能相同的模块部分。
7)突发事件测试,服务器上可能发生意外情况的测试,比如断电、断网、磁盘故障等。
8)在程序员修复Bug的地方再找一找,往往程序员只修复报告出来的缺陷而不去考虑别的功能在修改时可能会重新造成错误。
9)文字测试,如果在系统中有用词不当的地方,这是不应该的。
10)系统兼容测试,例如有些系统在Chrome、Firefox等浏览器下运行良好,但在IE、搜狗、360等浏览器下却出现其他问题,你很有可能发现BUG。
11)用户易用性测试,往往用户的需求是不断变化的,而其中一部份变化的原因,是用户操作上不方便引起的。
2.如何设计测试用例
个人理解大概从3个方面去考虑:
1.表单,也是基础的功能;比如,这个功能是拿来做什么用的,“更多搜索”模块怎么用、怎么测。
2.逻辑方面;比如,当在云基础设施管理平台上,创建一个vmdk卷。实际上是通过VMware vmdk driver机制将卷创建在Vcenter那边的,挂载给VMware虚拟机,也同样是在VC环境上。
3.业务流程;比如,当用户使用iso来安装自定义的镜像,操作的一个业务流程是什么。
3.一个好的测试用例具备的特点
1.易用性:对于一个即熟悉测试工作,又熟悉被测系统的QA测试人员,应当可以花费很少的时间可以理解测试用例表达的测试思路,并可以很快的执行完这个测试用例。对于不熟悉测试工作,不熟悉被测应用的人来说,也完全可以参照着该测试用例执行下去。
2.易维护性:当开发过程中的某些因素影响了测试需求,测试用例的作者或其他测试设计人员,应该可以花费很少的时间完成定位并维护所有相关测试用例的工作。
3.可重用性:一个好的测试用例要保证可以随着版本的变化始终保持可用状态,不能因为版本的变更,导致测试用例无效或者冗余。
二.测试用例设计方法
1.等价类划分法
穷举测试是不可能的,因此等价类划分法因运而生。它是指在每一个等价类中取一个数据作为代表性的测试数据取得较好的测试结果。等价类划分可有两种不同的情况:有效等价类和无效等价类。
在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类。如:输入值是学生成绩,范围是0~100;
等价类划分法
1)有效等价类
是指对于程序来说是合理的、有意义的输入数据构成的集合。利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能。
2)无效等价类
与有效等价类的定义恰巧相反。无效等价类是对程序无意义、不合法的输入,输入无效等价类后,程序应该给出错误提示。对于某一个测试场景,无效等价类至少应有一个,也可能有多个。比如一个程序规定了只允许输入数字,那么无效等价类,可以输入为空、中文、字母、特殊字符、数字长度/大小越界等多种类。
设计测试用例时,要同时考虑这两种等价类。因为软件不仅要能接收合理的数据,也要能经受意外的考验,给出相应的提示信息,这样的测试才能确保软件具有更高的可靠性。
2.边界值分析法
使用边界值分析方法设计测试用例应先确定边界情况,然后选取正好等于、大于或小于边界的值作为测试数据。
3.因果图法/判定表
前面介绍的等价类划分法和边界值分析法都是着重考虑输入条件,但未考虑输入条件之间的联系、相互组合等。考虑输入条件之间的相互组合,可能会产生一些新的情况。但要检查输入条件的组合不是一件容易的事情,即使把所有输入条件划分成等价类,他们之间的组合情况也相当多。因此必须考虑采用一种适合于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例。这需要利用因果图。它适合于检查程序输入条件的各种组合情况。
判定表法(判定表驱动分析方法)是分析和表达多逻辑条件下执行不同操作的情况下的工具。在程序设计发展的初期,判定表已被当作编写程序的辅助工具了。由于它可以把复杂的逻辑关系和多种条件组合的情况表达得既具体又明确。因果图方法终生成的是判定表。
比如,针对登录云平台界面上的账号、密码两个输入框,进行各种条件组合测试。
注意:
因果图的使用和分析比较复杂,使用因果图可能会消耗很多的时间,因此正确的策略是先考虑其他的测试用例设计方法,后再使用因果图和判定表,尽量的减少工作的时间并提高效率。此方法一般很少使用。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11