在上一篇博客中,介绍了利用autolt3让selenium可以实现文件上传,其中,我们将需要上传的那个文件的路径作为一个固定的值写入了autolt3的脚本里面,所以后续用selenium调用autolt3脚本生成的执行文件时,自然是每次只能自动上传那一个文件,在实际的测试中,会有需要测试上传大量或多个文件的场景,或者上传的文件不是每次固定的,这就需要对之前固定的文件名进行参数化去实现,下面将对上一篇的方法进行一些优化。
首先对看一下上篇中写的autolt3脚本:
ControlFocus("文件上传","","Edit1");
WinWait("[CLASS:#32770]","",10);
ControlSetText("文件上传","","Edit1","D:\picture.PNG");
Sleep(2000);
ControlClick("文件上传","","Button1");
需要进行参数化的就是"D:\picture.PND"这个值,autolt3参数化可以用$CmdLine[1]变量来代替,1表示的是第一个参数,只需要在脚本中把路径换成这个变量就好:
ControlFocus("文件上传","","Edit1");
WinWait("[CLASS:#32770]","",10);
ControlSetText("文件上传",&#