解决使用robot framework + selenium测试时,RIDE运行一次后不显示log的问题

问题

在使用RIDE进行UI自动化测试时,会发现经常运行第二遍不显示下方log,如下

原因

代码使用的是谷歌浏览器、IE浏览器测试,运行一次后chromedriver.exe,IEDriverServer.exe进程仍在运行中。

解决方案

方法一:每次运行后,手动关闭chromedriver.exe或者IEDriverServer.exe;

方法二:将下面代码保存为批处理,每次运行后手动运行一下:

taskkill /f /im  chromedriver.exe

taskkill /f /im  IEDriverServer.exe

方法三:封装成keywords

step1:

  def close_process(self, process_name):
      """Close a process by process name."""
      if process_name[-4:].lower() != ".exe":
          process_name += ".exe"
      os.system("taskkill /f /im " + process_name)

step2:

  保存上述文件至py文件,然后在RIDE中引用,并创建关键字

  Teardown
         Close Process chromedriver  #谷歌

         Close Process IEDriverServer #IE

step3:

  将Teardown加入test setting:

  *** Settings ***
  Test Teardown Teardown

你可能感兴趣的:(selenium,robotframework,RFS)