使用Firefox geckodriver的绝对路径

问题描述

我正在尝试在Linux Ubuntu环境中的Python中运行Selenium测试。 Geckodriver位于我的项目根文件夹中。 我从PyCharm命令行运行名为siteTest.py的文件:

python3 siteTest.py

但是,我看不到Selenium的任何输出。 在将测试分为setUp,test和tearDown并添加了 self 作为参数之前,该测试有效。 有什么建议我做错了吗? 预先感谢。

import os
import unittest
 
from selenium import webdriver
 
 
class siteTest:
    def setUp(self):
        ROOT_DIR = os.path.abspath(os.curdir)
        self.driver = webdriver.Firefox(executable_path=ROOT_DIR + '/geckodriver')
 
    def test(self):
        driver = self.driver
        driver.get('https://google.com/')
 
    def tearDown(self):
        self.driver.quit()
 
 
if __name__ == "__main__":
    unittest.main()

解决方法

您的程序接近完美。您只需要将siteTest class 注释为unittest.TestCase。如此有效,您需要重写以下行:

class siteTest:

为:

class siteTest(unittest.TestCase):
,

您可能需要注释设置和拆卸方法。

@classmethod
 def setUp(self)
  .
  .

@classmethod
 def tearDown(self)
  .
  .

在这里,我已注释为类方法,因此它将仅在该类中运行一次。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...