本文主要是介绍AutoRunner 功能自动化测试项目实训之脚本的串联(调用)(十四),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在自动化测试过程中我们首先要做的是脚本录制或者编辑,在这一过
程中由于被测系统的业务复杂程度不同,我们一般都是分模块或者功
能点来分别记录测试脚本,这样的话单个功能点测试和单个模块测试
的问题就解决了,但是我们在实际的测试项目里有很多功能和模块之
间都是有关联的,比如业务逻辑上的关联或者数据传输上的关联关系。
那么我们之前做的工作就白费了么?答案是我们绝对没有做白费力气
的事,我们需要对脚本进行串联,亦或称之为脚本串联,这里需要注
意几点问题:一是脚本之间的串联不是没有限制的,这里要求串联的
脚本是同一个项目下的,不同项目下的脚本不允许互相调用;二是脚
本之间的调用也要注意脚本之间的逻辑关系,举个简单的例子:一般
情况下我们对被猜测系统的测试都躲不开登录,然后才能进入系统开
始测试其他的例如增加信息、修改信息、删除信息,那么登录这个功
能的测试脚本和增加信息、修改信息、删除信息的脚本之间就有先后
顺序,必须先执行登录脚本然后才能执行增加信息、修改信息、删除
信息的脚本。当然还有其他的条件分支等等,具体怎么实现就要看具
体的被测系统和你的脚本逻辑了。
下面我们先来看个简单的项目案例,我们还是拿计算器这个程序作为
我们的测试对象,我们首先在add.bsh脚本里录制加法,然后在sub.bsh
脚本里录制减法,当然前提是在calc这个项目下:
先在add脚本里面做加法:
完整的加法脚本如下:
ar.window("CalcFrame_计算器").clickControl("Button_7", 11, 11, "left");
ar.window("CalcFrame_计算器").clickControl("Button_加", 12, 5, "left");
ar.window("CalcFrame_计算器").clickControl("Button_8", 21, 15, "left");
ar.window("CalcFrame_计算器").clickControl("Button_等于", 22, 26, "left");
ar.window("CalcFrame_计算器").clickControl("Button_清除", 24, 14, "left");
做完了加法下面我们在sub脚本里面录制减法的脚本:
完整的减法脚本如下:
ar.window("CalcFrame_计算器").clickControl("Button_8", 6, 19, "left");
ar.window("CalcFrame_计算器").clickControl("Button_减", 26, 8, "left");
ar.window("CalcFrame_计算器").clickControl("Button_3", 20, 12, "left");
ar.window("CalcFrame_计算器").clickControl("Button_等于", 13, 25, "left");
ar.window("CalcFrame_计算器").clickControl("Button_清除", 10, 9, "left");
在俩个脚本里面我们分别做了加法和减法俩种不同的功能测试,如果我
们想把这俩个功能一起测试,那么这个时候我们就可以把俩个脚本串联
起来,这里先做加法和先做减法从逻辑和功能上讲没有什么区别,所以
我们既可以在加法脚本里面调用减法脚本也可以在减法脚本里面调用加
法脚本,我们就以在加法脚本里面调用减法脚本的方法来讲脚本调用的
做法,接下来我们进入加法脚本,在加法脚本里面的结尾处添加调用减
法脚本的命令:
添加的脚本命令:
ar.callScript("sub.bsh");
完整的加法脚本添加调用减法脚本后应该是:
ar.window("CalcFrame_计算器").clickControl("Button_7", 11, 11, "left");
ar.window("CalcFrame_计算器").clickControl("Button_加", 12, 5, "left");
ar.window("CalcFrame_计算器").clickControl("Button_8", 21, 15, "left");
ar.window("CalcFrame_计算器").clickControl("Button_等于", 22, 26, "left");
ar.window("CalcFrame_计算器").clickControl("Button_清除", 24, 14, "left");
ar.callScript("sub.bsh");
然后我们在两个脚本里面分别添加打印语句,将加法和减法的结果分
别打印出来:
将加法的结果打印出来:
完整的脚本如下:
ar.window("CalcFrame_计算器").clickControl("Button_7", 11, 11, "left");
ar.window("CalcFrame_计算器").clickControl("Button_加", 12, 5, "left");
ar.window("CalcFrame_计算器").clickControl("Button_8", 21, 15, "left");
ar.window("CalcFrame_计算器").clickControl("Button_等于", 22, 26, "left");
String str1 = ar.window("CalcFrame_计算器").getProperty("Static_结果","value");
System.out.println("add= "str1);
ar.window("CalcFrame_计算器").clickControl("Button_清除", 24, 14, "left");
ar.callScript("sub.bsh");
将减法的结果打印出来:
完整的脚本如下:
ar.window("CalcFrame_计算器").clickControl("Button_8", 6, 19, "left");
ar.window("CalcFrame_计算器").clickControl("Button_减", 26, 8, "left");
ar.window("CalcFrame_计算器").clickControl("Button_3", 20, 12, "left");
ar.window("CalcFrame_计算器").clickControl("Button_等于", 13, 25, "left");
String str2 = ar.window("CalcFrame_计算器").getProperty("Static_结果","value");
System.out.println("sub= "+str2);
ar.window("CalcFrame_计算器").clickControl("Button_清除", 10, 9, "left");
做完了之后我们执行加法脚本得出如下结果:
加法和减法脚本一次执行,结果全部输出到输出区域,经对比都正确无误。
这篇关于AutoRunner 功能自动化测试项目实训之脚本的串联(调用)(十四)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!