【pytest】 pytest拓展功能 pycharm PermissionError: [Errno 13] Permission denied:

目录

[1. pytest-html](#1. pytest-html)

[1.1 PermissionError: [Errno 13] Permission denied: 'D:\\software\\python3\\anconda3\\Lib\\site-packages\\pytest_html\\pycache\\tmp_ttoasov'](#1.1 PermissionError: [Errno 13] Permission denied: 'D:\software\python3\anconda3\Lib\site-packages\pytest_html\pycache\tmp_ttoasov')

1.2错误原因

[2. 失败用例重试](#2. 失败用例重试)

[3. 用例并行执行 pytest-parallel](#3. 用例并行执行 pytest-parallel)


1. pytest-html

管理员打开 Anaconda Prompt 输入: pip install pytest-html

查询是否安装成功:

1.1 PermissionError: [Errno 13] Permission denied: 'D:\\software\\python3\\anconda3\\Lib\\site-packages\\pytest_html\\pycache\\tmp_ttoasov'

1.检查对应路径下的文件是否存在,且被占用。如果文件不存在,就找到对应文件即可;如果文件存在,被占用,将占用程序暂时关闭。

2.修改cmd的权限,以管理员身份运行。

3.检查是否是打开了文件夹。

复制代码
hhhhhhh
Traceback (most recent call last):
  File "D:\software\python3\anconda3\lib\tempfile.py", line 256, in _mkstemp_inner
    fd = _os.open(file, flags, 0o600)
PermissionError: [Errno 13] Permission denied: 'D:\\software\\python3\\anconda3\\Lib\\site-packages\\pytest_html\\__pycache__\\tmp_ttoasov'

During handling of the above exception, another exception occurred:

pytest_html\\pycache\\tmp_ttoasov 没有这个文件 删除这个文件夹再试试

1.2错误原因

1、文件被占用

2、文件找不到

3、无权限访问

4、打开的不是文件,而是一个目录

D:\software\python3\anconda3\Lib

参考:Python报错:PermissionError: [Errno 13] Permission denied的解决办法_python_脚本之家

1.3解决方案

Python 3.6 解决"PermissionError: [Errno 13] Permission denied" - 简书

管理员方式运行 pycharm

复制代码
import pytest

if __name__=='__main__':

    pytest.main(['-s','-v', './test_project','--html=./report/result.html'])

2. 失败用例重试

(base) C:\WINDOWS\system32>pip install pytest-rerunfailures

pytest -v ./rerunfailures --reruns 10

复制代码
PS E:\data\web测试\Selenium3自动化测试实战------基于Python语言\mycode\pytest_example> pytest -v ./rerunfailures  --reruns 10
======================================================================== test session starts ========================================================================
platform win32 -- Python 3.10.9, pytest-7.1.2, pluggy-1.0.0 -- D:\software\python3\anconda3\python.exe
cachedir: .pytest_cache
metadata: {'Python': '3.10.9', 'Platform': 'Windows-10-10.0.19045-SP0', 'Packages': {'pytest': '7.1.2', 'pluggy': '1.0.0'}, 'Plugins': {'anyio': '3.5.0', 'html': '4.0
.2', 'metadata': '3.0.0', 'rerunfailures': '12.0'}, 'JAVA_HOME': 'D:\\software\\Java\\jdk1.8.0_151'}
rootdir: E:\data\web测试\Selenium3自动化测试实战------基于Python语言\mycode\pytest_example
plugins: anyio-3.5.0, html-4.0.2, metadata-3.0.0, rerunfailures-12.0
collected 1 item                                                                                                                                                     

rerunfailures/test_rerunfailures.py::test_fail_rerun RERUN                                                                                                     [100%]
rerunfailures/test_rerunfailures.py::test_fail_rerun RERUN                                                                                                     [100%]
rerunfailures/test_rerunfailures.py::test_fail_rerun RERUN                                                                                                     [100%]
rerunfailures/test_rerunfailures.py::test_fail_rerun RERUN                                                                                                     [100%]
rerunfailures/test_rerunfailures.py::test_fail_rerun RERUN                                                                                                     [100%]
rerunfailures/test_rerunfailures.py::test_fail_rerun RERUN                                                                                                     [100%]
rerunfailures/test_rerunfailures.py::test_fail_rerun RERUN                                                                                                     [100%]
rerunfailures/test_rerunfailures.py::test_fail_rerun RERUN                                                                                                     [100%]
rerunfailures/test_rerunfailures.py::test_fail_rerun RERUN                                                                                                     [100%]
rerunfailures/test_rerunfailures.py::test_fail_rerun RERUN                                                                                                     [100%]
rerunfailures/test_rerunfailures.py::test_fail_rerun FAILED                                                                                                    [100%]

============================================================================= FAILURES ==============================================================================
__________________________________________________________________________ test_fail_rerun __________________________________________________________________________

    def test_fail_rerun():
>       assert 2+2==1
E       assert (2 + 2) == 1

rerunfailures\test_rerunfailures.py:2: AssertionError
====================================================================== short test summary info ======================================================================
FAILED rerunfailures/test_rerunfailures.py::test_fail_rerun - assert (2 + 2) == 1
==================================================================== 1 failed, 10 rerun in 0.75s ====================================================================
PS E:\data\web测试\Selenium3自动化测试实战------基于Python语言\mycode\pytest_example>

3. 用例并行执行 pytest-parallel

pip install pytest-parallel

运行 : pytest -q test_paralle.py

web 自动化 并行执行可能会相互干扰。少用

相关推荐
纯纯沙口21 小时前
pytest - 基础使用教程
pytest
问道飞鱼1 天前
【自动化测试】pytest 语法与核心概念
自动化测试·pytest·playwright
zUlKyyRC1 天前
基于一阶RC模型,FFRLS+EKF算法的电池SOC在线联合估计Matlab程序
pytest
我的xiaodoujiao3 天前
使用 Python 语言 从 0 到 1 搭建完整 Web UI自动化测试学习系列 40--完善优化 Allure 测试报告显示内容
python·学习·测试工具·pytest
我的xiaodoujiao3 天前
使用 Python 语言 从 0 到 1 搭建完整 Web UI自动化测试学习系列 41--自定义定制化展示 Allure 测试报告内容
python·学习·测试工具·pytest
nvd113 天前
Pytest 异步数据库测试实战:基于 AsyncMock 的无副作用打桩方案
数据库·pytest
nvd114 天前
深入分析:Pytest异步测试中的数据库会话事件循环问题
数据库·pytest
程序员雷叔4 天前
在postman设置请求里带动态token,看看这两种方法!
selenium·测试工具·单元测试·测试用例·pytest·lua·postman
花酒锄作田5 天前
[python]Flask - Tracking ID的设计
python·flask·pytest
测试秃头怪5 天前
Python测试框架Pytest的参数化
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·pytest