当前位置: 首页 > 面试题库 >

用selenium运行Django测试时管道破裂

乐正意智
2023-03-14
问题内容

在使用selenium(没有远程,没有xvfb)运行django测试时,我总是得到以下异常

Creating test database for alias 'default'...

Traceback (most recent call last):
File "/usr/lib/python2.7/wsgiref/handlers.py", line 86, in run
self.finish_response()
File "/usr/lib/python2.7/wsgiref/handlers.py", line 127, in finish_response
self.write(data)
File "/usr/lib/python2.7/wsgiref/handlers.py", line 210, in write
self.send_headers()
File "/usr/lib/python2.7/wsgiref/handlers.py", line 268, in send_headers
self.send_preamble()
File "/usr/lib/python2.7/wsgiref/handlers.py", line 192, in send_preamble
'Date: %s\r\n' % format_date_time(time.time())
File "/usr/lib/python2.7/socket.py", line 324, in write
----------------------------------------
Exception happened during processing of request from ('127.0.0.1', 44089)
self.flush()
File "/usr/lib/python2.7/socket.py", line 303, in flush
self._sock.sendall(view[write_offset:write_offset+buffer_size])
error: [Errno 32] Broken pipe
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/django/test/testcases.py", line 981, in _handle_request_noblock
self.process_request(request, client_address)
File "/usr/lib/python2.7/SocketServer.py", line 310, in process_request
self.finish_request(request, client_address)
File "/usr/lib/python2.7/SocketServer.py", line 323, in finish_request
self.RequestHandlerClass(request, client_address, self)
File "/usr/local/lib/python2.7/dist-packages/django/core/servers/basehttp.py", line 139, in __init__
----------------------------------------
super(WSGIRequestHandler, self).__init__(*args, **kwargs)
File "/usr/lib/python2.7/SocketServer.py", line 640, in __init__
self.finish()
File "/usr/lib/python2.7/SocketServer.py", line 693, in finish
self.wfile.flush()
File "/usr/lib/python2.7/socket.py", line 303, in flush
self._sock.sendall(view[write_offset:write_offset+buffer_size])
error: [Errno 32] Broken pipe

Destroying test database for alias 'default'...

Process finished with exit code 0

使用django 1.4和带有Firefox WebDriver的seleniumpython-bindings
2.28.0在LiveServerTestCase上运行测试。有人对如何解决有想法吗?


问题答案:

确保请求页面的浏览器正在等待响应。

如果我没记错的话,有selenium_client.implicitly_wait(sec)selenium_client.set_page_load_timeout(sec)命令,请确保您正在使用它。

否则,服务器将尝试写入已断开的管道,因为浏览器在发送响应之前关闭了连接。



 类似资料:
  • 问题内容: 我在gradle中运行测试时遇到问题。我知道我的gradle配置可以在其他机器上运行,但是不幸的是我的不行。我们有junit test和testNG,当尝试执行时,它们都产生如下的stacktrace: 它将连续产生此错误并带有不同的编号(Gradle Worker 2,Gradle Worker 3等)。有没有人遇到过类似的问题? 我正在使用gradle 1.6。 编辑:我忘了告诉我

  • 我正在AzureDevops CI/CD管道中为一个Java项目进行POC。我创建了一个Maven项目,该项目具有针对独立于我的项目的演示网站运行的Selenium测试(TestNG)。我想在构建管道中运行单元测试,在发布管道中运行UI Selenium测试。 任务似乎是我需要的构建块。我认为您可以区分单元测试 我能够在构建期间使用Maven任务和Surefire插件运行Selenium测试,但请

  • 我有一个非常奇怪的问题,我希望你的眼睛能帮助解决它。 我定义了一个函数,它通过BASH连接到Oracle SQL数据库。连接后,我使用一个herdeoc传入一个简单的select语句,该语句查找最大订阅id并递增它,具体取决于函数被调用的次数。代码如下: 在命令行调用函数时,上述代码非常有效: 但是,当函数通过管道传输到AWK语句时,函数不再抖动,这毫无意义!请参阅下面的输出: 我不明白。哈哈,我

  • 问题内容: 我想同时运行多个Selenium测试(在Jenkins服务器上)。 当前,由于ChromeDriver似乎通过特殊端口进行通讯,因此一次仅运行一次测试。因此,以某种方式,我想我必须通过Selenium将某种端口设置传递给ChromeDriver,以启动多个测试。 不幸的是,Selenium网站上的该主题为空:http : //docs.seleniumhq.org/docs/04_we

  • 问题内容: 我遇到了NullPointerException问题。我已尽力而为,但无法解决此问题。我正在为我的项目实现POM模型(selenium)。 这一页: 测试类: 错误日志: 类: 有什么帮助吗? 问题答案: 您需要先初始化。如我所见,您正在创建但未初始化的引用,请尝试如下操作:- 注意 :-如果要初始化,则需要先下载chromedriver并设置系统属性,然后再将驱动程序初始化为:- 所

  • 我正在使用Jedis在Redis中执行大量的插入/读取。Redis服务器正在使用默认配置。当我开始使用几个线程时,问题出现了,异常情况是: redis.clients.jedis.exceptions.JedisConnection异常:java.net.Socket异常: Pipe quebrado(写入失败) 我搜索了很多关于这个问题的信息,但找不到问题的原因或解决方法。我用来执行这些测试的代