pytest(二)excel数据驱动

一、excel数据驱动

  1. excel文件内容
  2. excel数据驱动使用方法
python 复制代码
import openpyxl
import pytest

def get_excel():
    excel_obj = openpyxl.load_workbook("../pytest结合数据驱动-excel/data.xlsx")
    sheet_obj = excel_obj["Sheet1"]
    values = sheet_obj.values
    case_list = []

    for row in values:
        data = []
        if row[0] != 'A':
            for cell in row:
                data.append(cell)
            case_list.append(data)
    print(case_list)        #[[1, 1, 2], [3, 6, 9], [100, 200, 300]]
    return case_list


def my_add(x, y):
    # print(x,y)
    result = x + y
    return result

class TestWithExcel:
    @pytest.mark.parametrize('x,y,expected',get_excel())
    def test_add(self, x, y, expected):
        # print(x,y,expected)
        print(f"{x} + {y} = {expected}")
        assert my_add(int(x), int(y))== int(expected)


if __name__ == '__main__':
    pytest.main(["-s", "test_caseexcel.py"])
  1. 运行结果
相关推荐
小锋java12344 分钟前
【技术专题】Matplotlib3 Python 数据可视化 - Matplotlib3 绘制热力图(Heatmap)
python
书到用时方恨少!5 分钟前
Python 面向对象进阶:多态——同一个接口,千种面孔
开发语言·python·多态·面向对象
AC赳赳老秦9 分钟前
OpenClaw实战案例:用Agent实现每日工作日报自动生成+发送
人工智能·python·职场和发展·eclipse·github·deepseek·openclaw
qq_1898070310 分钟前
html标签如何提升可访问性_aria-label与title区别【指南】
jvm·数据库·python
qq_3493174835 分钟前
mysql如何设置定时自动备份脚本_编写shell脚本与cron任务
jvm·数据库·python
2401_832365521 小时前
Chart.js 4 中基于数据实际范围的线性渐变填充方案
jvm·数据库·python
好运的阿财1 小时前
OpenClaw工具拆解之tts+web_search
前端·javascript·python·ai·ai编程·openclaw·openclaw工具
qq_342295821 小时前
如何让 Bootstrap 图标在 Vue 3 中持续旋转动画
jvm·数据库·python
Sirius.z1 小时前
第J2周:ResNet-50V2算法实战与解析
python
knight_9___1 小时前
RAG面试篇6
人工智能·python·机器学习·agent·rag