一个完整的流程需要有它的容错性,所以异常捕获和重试机制就尤为重要。Uibot的异常重试也很简单,先要一个完整的流程和公共模块里设个全局变量。全局变量我写过一个这里可以在提一下。
1.全局变量的设置
全局变量的设置,拖一个单独的流程块名字和描述如下,注意文件名后面要用
1.1里面的结构如下,拖一个子程序,注意子程序名后面要用,在里面把想要定义为全局变量的数据写在数组的一个值中或赋值给一个全局变量名(g_你想取的全局变量名)、g_dictGlobal["数组的值的名字"]
1.2在流程图变量里面把定义的全局变量名写上(下图的变量名g_dictGlobal、g_iRetryNum),单一的变量名值为0,数组变量名值为{}
1.3调用就是在流程的第一个流程块中,源代码里去写上这么一段代码公共模块文件名.子程序名()
2.异常捕获和重试
异常捕获和重试呢就是,现在公共模块里定义一个用于后面判断的值,一个不断循环的循环次数,最大的重试次数,这里我转了下最大重试次数的格式,因为这样写的话后面判断大小格式不对会判断不了报错
2.1然后再后面的你可能需要重试的的流程块中,对可能会出错的代码进行异常捕获。但是不要一个异常捕获就把全部代码装进去了,可以分多个或不会出错的代码就不用异常捕获。
2.2如果这段代码发生了异常,令这个全局变量为真。再公共模块里面我们设置的为假,这样每次循环就可以重新判断。
2.3判断流程是否异常里面这样写 g_dictGlobal["isError"] = True
2.4判断是否到了最大重试次数里面这样写 g_iRetryNum < g_dictGlobal["maxRetryNum"]
2.5测试
附加
还可以把这些最大重试次数写在配置文件里,得自己创个,一般的参数路径或密码账号什么的都是可以放在这里面的
写的有点不太好可能看不懂,这个我打包了可以去下下来自己试一下(我设的不要钱不要积分)https://download.csdn.net/download/yijie_over/19701028?spm=1001.2014.3001.5501