GUI测试,即图形界面测试,是软件测试中占据非常高比例的测试项目。可以说,测试工程师的大约90%以上的测试都是GUI测试。
如何进行全面、完善的GUI测试?本文从应用系统功能纬度、数据分析、最终用户需求等几个方面来说明如何进行全面的GUI测试。
GUI是应用系统的主要部分,它用来:
1)与最终用户交互,帮助用户使用这个软件。这个部分,越来越看重用户体验,因此非常看重操作的方便性、界面控制;
2)通过图形界面的操作,完成后台的业务逻辑处理,特别是C/S、B/S应用,对于单机版的应用系统,我们把后面进行的文件、运算、数据库处理也叫做后台业务逻辑处理;
3)是整个工作流程的一部分,可以把GUI的功能和非GUI的功能、GUI的功能与GUI的功能贯穿在一起,形成一个完整的流程。
从测试设计的角度来看,我们需要进行的测试包括:
第一,GUI屏幕控制逻辑测试;对屏幕上的控制逻辑进行测试;
第二,测试后台的业务逻辑处理;偏重于对数据的测试和检查;
第三,业务流程测试,也就是说,我们认为一个单个的功能是处于一个完整的业务流程之中的,需要通过整个业务流程来进行测试。换句话说,一个单一的功能是成功的,但是串联在一个流程中的功能未必是正确的。
界面控制逻辑测试
测试需求分析
界面控制逻辑的测试,首先是需要进行此部分的需求分析,梳理整个的界面控制逻辑规则,并且根据规则来设计测试用例。
测试用例设计
设计的用例,主要是根据规则,设计不同的测试执行路径,达到对界面控制逻辑的全覆盖。如果考虑到各个控制逻辑之间的串联,那么路径的个数将会是非常庞大的,因此,我们可以不考虑到完整的控制逻辑路径,而是考虑单一的路径,即针对某个规则的路径覆盖。
后台业务逻辑测试测试
测试需求分析
后台的业务逻辑测试,是在输入数据的不同组合之下,后台业务逻辑的正确性。包括两个部分:
1)正确的测试数据测试;
2)无效等价类的数据测试。
测试用例设计
一般情况下,使用带有约束关系的正交法来进行。正交法带来的问题是测试用例的个数非常庞大,因此,我们建议通过一些规则,对测试用例的有效性进行评估,实现使用最少的测试用例达到最好的测试效果。
关于测试用例的规则检验,有两种方法:
1)查看数据(如数据库的数据、文件的数据等);
2)通过其他的GUI功能查看结果。一般我们建议采用后一个来进行测试。
业务流程测试
业务流程测试,也就是BPT。关于BPT的测试,我们推荐采用模型驱动的测试用例设计方法进行,详细的内容,请用户自行查看相关的文章。