Webdriver.quit() 在IE测试结束时导致Python崩溃

3 投票
1 回答
839 浏览
提问于 2025-04-17 01:36

我正在用Python通过Webdriver来运行我的Selenium测试脚本,目标是IE浏览器;不过,当我调用webdriver.quit()时,Python会随机崩溃。每当一个测试用例结束并调用webdriver.quit时,都会弹出一个窗口提示,告诉我python.exe崩溃了。去查看事件查看器,发现其中一个错误时,我找到了以下内容:

-General-
Faulting application name: python.exe, version: 0.0.0.0, time stamp: 0x4cf14060
Faulting module name: IEDriver.dll, version: 0.0.0.0, time stamp: 0x4e2dbecc
Exception code: 0xc0000005
Fault offset: 0x0007f0ae
Faulting process id: 0x2148
Faulting application start time: 0x01cc6ca18a2b2d5a
Faulting application path: C:\Python27\python.exe
Faulting module path: C:\Python27\lib\site-packages\selenium\webdriver\ie\IEDriver.dll
Report Id: e1f5cf3c-d894-11e0-ac1f-782bcb930798

-Detailed-
Log Name:      Application
Source:        Application Error
Date:          9/6/2011 10:31:18 AM
Event ID:      1000
Task Category: (100)
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      Balt-002670.SYSALLI.com
Description:
Faulting application name: python.exe, version: 0.0.0.0, time stamp: 0x4cf14060
Faulting module name: IEDriver.dll, version: 0.0.0.0, time stamp: 0x4e2dbecc
Exception code: 0xc0000005
Fault offset: 0x0007f0ae
Faulting process id: 0x2148
Faulting application start time: 0x01cc6ca18a2b2d5a
Faulting application path: C:\Python27\python.exe
Faulting module path: C:\Python27\lib\site-packages\selenium\webdriver\ie\IEDriver.dll
Report Id: e1f5cf3c-d894-11e0-ac1f-782bcb930798
Event Xml:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name="Application Error" />
    <EventID Qualifiers="0">1000</EventID>
    <Level>2</Level>
    <Task>100</Task>
    <Keywords>0x80000000000000</Keywords>
    <TimeCreated SystemTime="2011-09-06T14:31:18.000000000Z" />
    <EventRecordID>7302</EventRecordID>
    <Channel>Application</Channel>
    <Computer>Balt-002670.SYSALLI.com</Computer>
    <Security />
  </System>
  <EventData>
    <Data>python.exe</Data>
    <Data>0.0.0.0</Data>
    <Data>4cf14060</Data>
    <Data>IEDriver.dll</Data>
    <Data>0.0.0.0</Data>
    <Data>4e2dbecc</Data>
    <Data>c0000005</Data>
    <Data>0007f0ae</Data>
    <Data>2148</Data>
    <Data>01cc6ca18a2b2d5a</Data>
    <Data>C:\Python27\python.exe</Data>
    <Data>C:\Python27\lib\site-packages\selenium\webdriver\ie\IEDriver.dll</Data>
    <Data>e1f5cf3c-d894-11e0-ac1f-782bcb930798</Data>
  </EventData>
</Event>

通过调试的方法,我确定了导致崩溃的代码行:

RemoteWebDriver.quit(self)

这个函数调用是在webdriver.py模块的IE版本中。

系统规格:

操作系统:Windows 7

浏览器:IE 9

Selenium版本:2.0

正如Tourman所建议的,我向Selenium的开发者们提出了一个问题。这个问题可以在这里找到:

http://code.google.com/p/selenium/issues/detail?id=2408

1 个回答

0

这听起来像是Webdriver里的一个错误,但没有错误的详细信息和出问题的代码,我们也没什么好分析的。

我建议你把这个问题反馈给开发者:

http://code.google.com/p/selenium/

撰写回答