Skip to content

Firefox 82 hangs when calling driver.back() not from the top frame #1796

@jsnjack

Description

@jsnjack

System

  • Version: v0.27.0
  • Platform: Fedora 32
  • Firefox: Firefox 82.0 (64-bit)
  • Selenium: 3.141.59

Testcase

After updating to firefox 82, the following test case started to fail:

from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities


b1 = webdriver.Remote(
    command_executor='http://127.0.0.1:4444/wd/hub',
    desired_capabilities=DesiredCapabilities.FIREFOX
)
b1.get("http://testsite.surfly.com/multisession.html")
b1.find_element_by_tag_name("a").click()
b1.switch_to_frame("bing_frame")
b1.back()

Firefox hangs when calling b1.back() not from the top frame. This happens only when using remote driver. Works fine in firefox 81.

Stacktrace

Traceback (most recent call last):
  File "tt.py", line 13, in <module>
    b1.back()
  File "/usr/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py", line 813, in back
    self.execute(Command.GO_BACK)
  File "/usr/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py", line 319, in execute
    response = self.command_executor.execute(driver_command, params)
  File "/usr/lib/python2.7/site-packages/selenium/webdriver/remote/remote_connection.py", line 374, in execute
    return self._request(command_info[0], url, body=data)
  File "/usr/lib/python2.7/site-packages/selenium/webdriver/remote/remote_connection.py", line 402, in _request
    resp = http.request(method, url, body=body, headers=headers)
  File "/usr/lib/python2.7/site-packages/urllib3/request.py", line 72, in request
    **urlopen_kw)
  File "/usr/lib/python2.7/site-packages/urllib3/request.py", line 150, in request_encode_body
    return self.urlopen(method, url, **extra_kw)
  File "/usr/lib/python2.7/site-packages/urllib3/poolmanager.py", line 322, in urlopen
    response = conn.urlopen(method, u.request_uri, **kw)
  File "/usr/lib/python2.7/site-packages/urllib3/connectionpool.py", line 638, in urlopen
    _stacktrace=sys.exc_info()[2])
  File "/usr/lib/python2.7/site-packages/urllib3/util/retry.py", line 367, in increment
    raise six.reraise(type(error), error, _stacktrace)
  File "/usr/lib/python2.7/site-packages/urllib3/connectionpool.py", line 600, in urlopen
    chunked=chunked)
  File "/usr/lib/python2.7/site-packages/urllib3/connectionpool.py", line 377, in _make_request
    httplib_response = conn.getresponse(buffering=True)
  File "/usr/lib64/python2.7/httplib.py", line 1148, in getresponse
    response.begin()
  File "/usr/lib64/python2.7/httplib.py", line 448, in begin
    version, status, reason = self._read_status()
  File "/usr/lib64/python2.7/httplib.py", line 412, in _read_status
    raise BadStatusLine("No status line received - the server has closed the connection")
urllib3.exceptions.ProtocolError: ('Connection aborted.', BadStatusLine('No status line received - the server has closed the connection',))

Trace-level log

ff_logs.txt

Metadata

Metadata

Assignees

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions