Python 运行Selenium geckodriver而不生成geckodriver日志文件

Python 运行Selenium geckodriver而不生成geckodriver日志文件,python,selenium,firefox,robotframework,geckodriver,Python,Selenium,Firefox,Robotframework,Geckodriver,我有一些测试套件使用。我用Firefox和geckodriver运行这些测试。每当我运行测试套件时,就会创建一个geckodriver-*.log文件 例如,在运行测试套件之前,我只有.robot文件: $ ls example.robot 然后我运行robot,生成geckodriver日志文件: $ robot --output NONE --log NONE --report NONE example.robot <output of running test suite>

我有一些测试套件使用。我用Firefox和geckodriver运行这些测试。每当我运行测试套件时,就会创建一个
geckodriver-*.log
文件

例如,在运行测试套件之前,我只有
.robot
文件:

$ ls
example.robot
然后我运行robot,生成geckodriver日志文件:

$ robot --output NONE --log NONE --report NONE example.robot 
<output of running test suite>
$ ls
example.robot  geckodriver-1.log
My
*.robot
文件,以获取最小可复制示例

*** Settings ***
Library     SeleniumLibrary    run_on_failure=None

*** Test Cases ***
Example Test Case
    Open Browser    https://stackoverflow.com/    Firefox
    Close Browser
版本和操作系统信息

  • 操作系统:Linux
  • Firefox:79.0
  • 壁虎河:0.26.0
  • Python:3.6.9
  • 机器人框架:3.2.2
  • 机器人框架硒库:4.4.0

解决方案是将关键字的
服务日志路径
参数设置为
os.path.devnull
,如下所示:

*** Settings ***
Library     SeleniumLibrary    run_on_failure=None

*** Test Cases ***
Example Test Case
    Open Browser    https://stackoverflow.com/    Firefox    service_log_path=${{os.path.devnull}}
    Close Browser
然后
geckodriver
将登录到
os.path.devnull
而不是当前工作目录中的文件


注意:此示例使用Robot Framework 3.2中的一个新功能。

为什么不在以后使用os.remove简单地删除文件?当然,我可以在以后删除文件,但我希望它们不是一开始就创建的。我在一台装有SSD的计算机上运行这些测试,我不想浪费我不需要的写操作。但是,即使使用写操作不是一个问题,从好奇的角度来看,我想知道如何防止创建这些文件。