首页 > 解决方案 > 在联想笔记本电脑上运行“pywinatuo”脚本时出现不需要的“Windows 致命异常”

问题描述

我不知道为什么同一个脚本在一个系统上运行良好,而在其他模型上抛出很多致命异常

环境 Python 版本:3.7.2(尝试使用 32 位和 64 位可执行文件) Pywinauto:0.6.8 操作系统:Windows 10(内部版本:16299) 笔记本电脑型号:yoga

还尝试将 python 和 pywinatuo 安装为管理模式,但仍然收到相同的错误消息。

> Python 3.7.2 (tags/v3.7.2:9a3ffc0492, Dec 23 2018, 22:20:52) [MSC v.1916 32 bit (Intel)] on win32

'''def test_powerpoint_perf_activity():
      os.startfile(testfilepath)
      connectApp=
      Application(backend='uia').connect(title_re='.*'+file_name+'*.')
      connectWindow = connectApp.window(title_re='.*'+file_name+'*.')

      if connectWindow.is_maximized() == False:
         connectWindow.MaximizeButton.click_input()

      connectWindow.HOMETabItem.click_input()
      connectWindow.NewSlideMenuItem.click_input()
      connectWindow.TitleandTextListItem.click_input()'''

平台 win32 -- Python 3.7.2、pytest-5.2.2、py-1.8.0、pluggy-0.13.0

  c:\python37_32\python.exe
cachedir: .pytest_cache
metadata: {'Python': '3.7.2', 'Platform': 'Windows-10-10.0.16299-SP0', 'Packages': {'pytest': '5.2.2', 'py':

'1.8.0','pluggy':'0.13.0'},'插件':{'allure-pytest':'2.8.6','html':'2.0.0','元数据':'1.8 .0'}} rootdir: C:\securityapps_master_m\testcases enter code hereplugins: allure-pytest-2.8.6, html-2.0.0, metadata-1.8.0 收集...错误:找不到进程“POWERPNT.EXE”。错误:找不到进程“IEXPLORE.EXE”。收集了 1 件物品

test_san_tool.py::test_TC02_Dictionary Windows fatal exception: code 0xe0000002
Thread 0x00002ea0 (most recent call first):
  File "C:\securityapps_master_m\testcases\test_san_tool.py", line 37 in test_TC02_Dictionary
  File "c:\python37_32\lib\site-packages\_pytest\python.py", line 170 in pytest_pyfunc_call
  File "c:\python37_32\lib\site-packages\pluggy\callers.py", line 187 in _multicall
  File "c:\python37_32\lib\site-packages\pluggy\manager.py", line 86 in <lambda>
  File "c:\python37_32\lib\site-packages\pluggy\manager.py", line 92 in _hookexec
  File "c:\python37_32\lib\site-packages\pluggy\hooks.py", line 286 in __call__
  File "c:\python37_32\lib\site-packages\_pytest\python.py", line 1423 in runtest
  File "c:\python37_32\lib\site-packages\_pytest\runner.py", line 125 in pytest_runtest_call
  File "c:\python37_32\lib\site-packages\pluggy\callers.py", line 187 in _multicall
  File "c:\python37_32\lib\site-packages\pluggy\manager.py", line 86 in <lambda>
  File "c:\python37_32\lib\site-packages\pluggy\manager.py", line 92 in _hookexec
  File "c:\python37_32\lib\site-packages\pluggy\hooks.py", line 286 in __call__
  File "c:\python37_32\lib\site-packages\_pytest\runner.py", line 201 in <lambda>
  File "c:\python37_32\lib\site-packages\_pytest\runner.py", line 229 in from_call
  File "c:\python37_32\lib\site-packages\_pytest\runner.py", line 201 in call_runtest_hook
  File "c:\python37_32\lib\site-packages\_pytest\runner.py", line 176 in call_and_report
  File "c:\python37_32\lib\site-packages\_pytest\runner.py", line 95 in runtestprotocol
  File "c:\python37_32\lib\site-packages\_pytest\runner.py", line 80 in pytest_runtest_protocol
  File "c:\python37_32\lib\site-packages\pluggy\callers.py", line 187 in _multicall
  File "c:\python37_32\lib\site-packages\pluggy\manager.py", line 86 in <lambda>
  File "c:\python37_32\lib\site-packages\pluggy\manager.py", line 92 in _hookexec
  File "c:\python37_32\lib\site-packages\pluggy\hooks.py", line 286 in __call__
  File "c:\python37_32\lib\site-packages\_pytest\main.py", line 258 in pytest_runtestloop
  File "c:\python37_32\lib\site-packages\pluggy\callers.py", line 187 in _multicall
  File "c:\python37_32\lib\site-packages\pluggy\manager.py", line 86 in <lambda>                                                        

文件“c:\python37_32\lib\site-packages\pluggy\manager.py”,第 92 行在 _hookexec 文件“c:\python37_32\lib\site-packages\pluggy\hooks.py”,第 286 行调用

标签: pythonpytestpytest-html

解决方案


我有这个完全相同的问题。我的python版本是,

$ python --version Python 3.7.2

我的pytest是

pytest==5.3.5。我遇到了与您遇到的完全相同的问题。

我将 pytest 降级到 4.0.0,它工作得非常好。

在另一台 Python 版本为 3.7.0 且 pytest==5.3.5 的机器上,我没有注意到这个问题。

因此,将 python 从 3.7.2 降级到 3.7.0 或将 pytest 降级到较低版本都可以。我希望这能解决你的问题。


推荐阅读