8

Selenium Web ドライバーを使用していくつかの基本的な機能 Web テストを実行していますが、2 つの機能 Web テスト ケースでこのエラーに気付きました。テストケースはすべて最後に合格しますが、コンソールに次のように表示されます。

Exception happened during processing of request from ('127.0.0.1', 1169)
    data = self._sock.recv(self._rbufsize)
error: [Errno 10054] An existing connection was forcibly closed by the remote host
Traceback (most recent call last):
  File "C:\dev\django-projects\barbwire\venv\lib\site-packages\django\test\testcases.py", line 981, in _handle_request_noblock
    self.process_request(request, client_address)
  File "C:\Python27\Lib\SocketServer.py", line 310, in process_request
    self.finish_request(request, client_address)
  File "C:\Python27\Lib\SocketServer.py", line 323, in finish_request
    self.RequestHandlerClass(request, client_address, self)
  File "C:\dev\django-projects\barbwire\venv\lib\site-packages\django\core\servers\basehttp.py", line 139, in __init__
    super(WSGIRequestHandler, self).__init__(*args, **kwargs)
  File "C:\Python27\Lib\SocketServer.py", line 638, in __init__
    self.handle()
  File "C:\Python27\Lib\wsgiref\simple_server.py", line 116, in handle
    self.raw_requestline = self.rfile.readline()
  File "C:\Python27\Lib\socket.py", line 447, in readline
    data = self._sock.recv(self._rbufsize)
error: [Errno 10054] An existing connection was forcibly closed by the remote host
Traceback (most recent call last):
  File "C:\dev\django-projects\barbwire\venv\lib\site-packages\django\test\testcases.py", line 981, in _handle_request_noblock
    self.process_request(request, client_address)
  File "C:\Python27\Lib\SocketServer.py", line 310, in process_request
    self.finish_request(request, client_address)
  File "C:\Python27\Lib\SocketServer.py", line 323, in finish_request
    self.RequestHandlerClass(request, client_address, self)
  File "C:\dev\django-projects\barbwire\venv\lib\site-packages\django\core\servers\basehttp.py", line 139, in __init__
    super(WSGIRequestHandler, self).__init__(*args, **kwargs)
  File "C:\Python27\Lib\SocketServer.py", line 638, in __init__
    self.handle()
  File "C:\Python27\Lib\wsgiref\simple_server.py", line 116, in handle
    self.raw_requestline = self.rfile.readline()
  File "C:\Python27\Lib\socket.py", line 447, in readline
    data = self._sock.recv(self._rbufsize)
error: [Errno 10054] An existing connection was forcibly closed by the remote host
----------------------------------------
----------------------------------------
Exception happened during processing of request from ('127.0.0.1', 1170)
----------------------------------------
Destroying test database for alias 'default'...

以下は、テスト ケースの 1 つの例です。

def test_can_join_main_site(self):
    self.browser.get(self.live_server_url)
    self.browser.find_element_by_link_text('Register').click()
    time.sleep(5)
    self.browser.find_element_by_name('submit').click()
    time.sleep(5)

完了するまで実行されますが、上記の例外がダンプされます。アイデアは、単純な登録ページをテストすることです。送信ボタンをクリックすると、ページが再表示され、ユーザーは追加のフォーム フィールドに入力するよう求められます。予想どおり、すべてが正しく動作しているように見えますが、なぜエラーが発生するのでしょうか? 何か不足していますか?

4

4 に答える 4

5

FireFox を使用して、シャットダウン プロセスを十分に遅くすることでこれを解決できました。

@classmethod
def tearDownClass(cls):
    time.sleep(3)
    cls.selenium.quit()
    time.sleep(3)
    super(TestClass, cls).tearDownClass()
于 2013-03-01T20:00:17.087 に答える
4

URLlocalhostを次のように置き換えることで問題を修正しました。127.0.0.1

    url = self.live_server_url
    url = url.replace('localhost', '127.0.0.1')
    self.driver.get('%s%s' % (url, reverse('whatever')))

私はここで解決策を見つけました:https ://code.djangoproject.com/ticket/15178

于 2013-01-24T00:22:46.753 に答える
1

Django Debug Toolbarは、これらのエラーを大量に生成します。アンインストールしてからやり直してください

于 2014-02-28T16:39:01.563 に答える