pytest--python的一种测试框架--pytest初阶

前言

使用pytest去做测试时我们对文件名的命名其实是有规范的,要用test_开头!!!

一、pytest初阶

python 复制代码
def test_one():
    expect=1
    actual=1
    assert expect==actual#测试专用语句:assert,识别期望与实际值是否相等

这个时候,运行结果为空是因为把他当python代码去运行了,python想运行这个函数最起码是要有个主函数调用的,常识哈。

二、然后想把它当成测试用例去跑有两种方法:

方法1

1、打开Terminal在终端上运行,用pytest关键字接测试用例的文件:

python 复制代码
def test_one():
    expect=1
    actual=1
    assert expect==actual#测试专用语句:assert,识别期望与实际值是否相等
复制代码
collected 1 item 意思是收集到一条测试用例,下一句test_one.py后面有一个绿色的点,这意味着该测试通过,下面有1 passed in 0.00s更详细的通过情况。
python 复制代码
def test_one():
    expect=1
    actual=1
    assert expect==actual#测试专用语句:assert,识别期望与实际值是否相等

def test_two():
    expect=1
    actual=2
    assert expect==actual#测试专用语句:assert,识别期望与实际值是否相等
复制代码
文件中出现多个测试用例,有对有错时,可以看到运行结果是一条失败一条通过,在0.03s内。可以看到collected 1 item 下面一条语句后面一个绿点一个红F,进度100%。

这样相对来说比较麻烦,可以看看第二种方法

方法2

第二种方法:windows点左上file进到设置里找到tools-pythonintegratedtools(pyython集成工具)-测试-选中pytest-应用-确定,即可

我们会发现,选中之后函数左边出现了绿色的三角符号,点击运行它就会运行当下这条测试用例。运行失败的还会在下面对运行结果进行分析,如图所示

三、注意

python 复制代码
def test_one():
    expect=1
    actual=1
    assert expect==actual#测试专用语句:assert,识别期望与实际值是否相等

def test_two():
    expect=1
    actual=2
    assert expect==actual#测试专用语句:assert,识别期望与实际值是否相等
def three():
    expect=1
    actual=2
    assert expect==actual

添加一个three函数再执行可以发现仍然是一通过一失败,所以说如果测试用例的方法没有用test_这样的格式命名它不会去执行,这是一个规范

相关推荐
留不住丨晚霞5 分钟前
说说SpringBoot常用的注解?
java·开发语言
大模型真好玩8 分钟前
准确率飙升!GraphRAG如何利用知识图谱提升RAG答案质量(额外篇)——大规模文本数据下GraphRAG实战
人工智能·python·mcp
19899 分钟前
【零基础学AI】第30讲:生成对抗网络(GAN)实战 - 手写数字生成
人工智能·python·深度学习·神经网络·机器学习·生成对抗网络·近邻算法
hardStudy_h15 分钟前
C++——内联函数与Lambda表达式
开发语言·jvm·c++
applebomb18 分钟前
没合适的组合wheel包,就自行编译flash_attn吧
python·ubuntu·attention·flash
艾莉丝努力练剑42 分钟前
【C语言】学习过程教训与经验杂谈:思想准备、知识回顾(三)
c语言·开发语言·数据结构·学习·算法
Chasing__Dreams1 小时前
python--杂识--18.1--pandas数据插入sqlite并进行查询
python·sqlite·pandas
彭泽布衣2 小时前
python2.7/lib-dynload/_ssl.so: undefined symbol: sk_pop_free
python·sk_pop_free
witton2 小时前
Go语言网络游戏服务器模块化编程
服务器·开发语言·游戏·golang·origin·模块化·耦合
喜欢吃豆2 小时前
从零构建MCP服务器:FastMCP实战指南
运维·服务器·人工智能·python·大模型·mcp