# 第一步:生成xml数据
pytest --alluredir=./report/xml testcase.py
# 第二步:生成html文件
allure generate --clean ./report/xml -o ./result/html

将截图加入到报告里

# -*- coding: utf-8 -*-

from selenium import webdriver
import allure

browser=webdriver.Chrome()
browser.get("https://www.baidu.com")
try:
    browser.find_element_by_id("zhiyi").send_keys('test123456')  # 输入密码,
except Exception as e:
    file_name = './test.jpg'
    browser.save_screenshot(file_name)  # 截图函数
    '''allure添加截图附件'''
    with open(file_name, mode='rb') as file:
        # 读取文件,将读取的结果作为参数传给allure
        f = file.read()  
    # 把图片添加到allure操作步骤里
    allure.attach(f, 'login', allure.attachment_type.JPG)  
    raise e

pytest 中 yield 和 return 的区别和相同点

共同点

区别

# -*- coding: utf-8 -*-

import pytest

@pytest.fixture()
def openbrower():
    print("打开浏览器")
    yield "返回浏览器"
    print("关闭浏览器")

def test01(openbrower):
    print(openbrower)

运行结果

testcase.py::test01 打开浏览器
# 返回值
返回浏览器
PASSED关闭浏览器

usefixtures 与传 fixture 区别

Pytest 常用的插件

一键安装多个模块

selenium==3.0
requests


↙↙↙阅读原文可查看相关链接,并与作者交流