最近使用贯众云平台工具写脚本,进行Ui界面的自动化测试。刚开始接触,确实碰到不少的问题,稍微难点的就是判断语句,循环语句以及shell命令的使用,尤其是对于咱们测试这样比较少接触代码的人来说。

其实吧,现在发现本身的语句并不难,当了解怎么使用之后确实很简单,主要是最开始可能不知道如何下手。现在记录一下使用其解决实际写脚本上碰到的问题。

一、判断语句,就是If-Else-EndIf。If后面跟判断条件以及判断后的action,else后定义其它情况下的操作,EndIf是结束判断。比如说某个控件不是一定出现,是根据权限来判定的,如果要点击操作,那么这里我们就要用到条件判断。下面是一个栗子:

If : self.waitForScreen(className=android.widget.ImageView,timeout=10):
Touch : className=android.widget.ImageView
Else :
#
Logger : 广告不存在

EndIf:

这里我们就是判断一个广告的控件是否存在,如果存在,那么我们就关闭这个广告,如果不存在,那么我们就打个广告不存在的日志。

二、循环执行 这里的是For循环,这个就比较简单了,在语句中填入循环次数以及循环的操作即可,栗子:

For : myNum in range(6):
ShellCommand : input keyevent 67
EndFor:

这里就是循环执行ShellCommand的操作,keyevent67代表的是del键。这里这个不是重点,重点是我们要知道填入循环的次数,以及我们循环的操作。shellCommand下面有讲到。

三、shellCommand 在写脚本的过程中碰到这样一个问题,在我们的输入框中已经存在了数据,如果我们要用inputText的话,它会在已有数据后加上数据,就得不到我们需要的结果了。

然而脚本中并没有删除已有数据的命令,这时候我们要用到android中的shellCommand了。keyevent就是模拟键盘输入操作,按键对应着有编号。上面的栗子中我们已经看到了一个编号为67的Keyevent,对应着就是删除操作,这样我们就可以使用该命令对输入框中已有数据进行删除了。下面我就从其它地方搬一下keyevent的编号及按键对照表。

 
对照表搬自http://blog.csdn.net/chen825919148/article/details/18732041。android官方文档上好像是有的,懒的找了,就这个了。
 
好了,今天就写到这里吧。

 

相关文章: