相关疑难解决方法(0)

Selenium:如何在不调用driver.quit()的情况下停止影响PC内存的geckodriver进程?

有一个测试,像:

 import //needed imports

 public class TestClass{
    WebDriver driver;

    @Before
    public void setUp() {
       //some code
    }

    @Test
    public void test1() {
       //some code, including init of driver (geckodriver)
    }

   //@After
   // public void tearDown() {
   //  driver.quit();
   //}
}
Run Code Online (Sandbox Code Playgroud)

所以,我使用firefox实例,使用geckodriver并成功运行我的测试.但是我希望不要在每次运行后关闭firefox窗口,因为我只想分析我拥有的东西,并在测试运行后修复任何需要的东西(我将在稍后的unComment driver.quit()).同时,每次调用而不关闭驱动程序会导致我的PC上的RAM过度影响(并且无关紧要 - 我是否在测试后手动关闭浏览器): 在此输入图像描述

所以,问题是:是否有任何方法可以关闭"geckodriver"的进程(更确切地说 - 执行smth,这将关闭taskmgr中的geckodriver.exe进程),但是在测试完成后不会关闭浏览器?例如,在测试本身添加一些方法,无论如何......这不会影响我的工作/测试本身,我只想添加一些优化.

python java firefox selenium geckodriver

9
推荐指数
1
解决办法
5176
查看次数

MaxRetryError: HTTPConnectionPool: Max retries exceeded (Caused by ProtocolError('Connection aborted.', error(111, 'Connection denied')))

我有一个问题:我想测试“选择”和“输入”。我可以像下面的代码那样写:原始代码:

 12 class Sinaselecttest(unittest.TestCase):
 13 
 14     def setUp(self):
 15         binary = FirefoxBinary('/usr/local/firefox/firefox')
 16         self.driver = webdriver.Firefox(firefox_binary=binary)
 17 
 18     def test_select_in_sina(self):
 19         driver = self.driver
 20         driver.get("https://www.sina.com.cn/")
 21         try:
 22             WebDriverWait(driver,30).until(
 23                 ec.visibility_of_element_located((By.XPATH,"/html/body/div[9]/div/div[1]/form/div[3]/input"))
 24             )
 25         finally:
 26             driver.quit()
 # #??select??
 27         select=Select(driver.find_element_by_xpath("//*[@id='slt_01']")).select_by_value("??")
 28         element=driver.find_element_by_xpath("/html/body/div[9]/div/div[1]/form/div[3]/input")
 29         element.send_keys("??")
 30         driver.find_element_by_xpath("/html/body/div[9]/div/div[1]/form/input").click()
 31         driver.implicitly_wait(5)

 32    def tearDown(self):
 33        self.driver.close()
Run Code Online (Sandbox Code Playgroud)

我想测试Selenium的“选择”功能。所以我选择sina网站选择一个选项并在textarea中输入文本。然后搜索它。但是当我运行这个测试时,它有错误:

 Traceback (most recent call last):
      File "test_sina_select.py", line 32, in tearDown
        self.driver.close()
      File "/usr/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py", line 688, in close
        self.execute(Command.CLOSE)
      File "/usr/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py", line 319, in …
Run Code Online (Sandbox Code Playgroud)

python selenium urllib3 python-requests selenium-webdriver

8
推荐指数
1
解决办法
3万
查看次数