就因为不会这个测试框架,导致面试没过,我真的太难了

本文介绍了为何使用单元测试框架,并详细讲述了 pytest 的基础使用,包括测试夹具(Fixture)、数据驱动和参数化。还讨论了 pytest 的测试报告和插件系统,强调了其在Python自动化测试领域的主流地位。
摘要由CSDN通过智能技术生成

前言

今天笔者想和大家唠唠自动化测试技术面试方面的问题,事情是这样子的,笔者有一个朋友是做Python自动化测试的。前几天他告诉我去参加一个大厂面试被刷了。

 我问他是有没有总结被刷下来的原因。他说面试官问了一些 pytest 单元测试框架相关的知识,包括什么插件系统和用力筛选。但是他所在的公司用的技术是基于 unittest 的,没有用过 pytest。

我跟他说你可以和技术面试官说明,在实际过程当中你没有使用过 pytest,但是你可以后面再学。这哥们说:我就是这样跟面试官说的,但是面试官告诉我 pytest 现在已经是行业里面的主流,还在坚持用 unittest 说明我的技术已经过时了,没有跟上现在测试领域的发展。

实际上他在面试之前已经了解过 pytest 的一些基础用法,但是网上的一些资料,都是停留在用法和一些知识点的讲解,没有深入到 pytest 内部运行和一些高级特性。所以被问到的时候,自己临时抱佛脚的一些知识都没有用上。

后面我给这位朋友补习了一些关于Python的高级特性。现在我连同基础部分的内容一起贴出来,希望对Python自动化测试的一些朋友有所帮助。

 1、为什么用单元测试框架?

首先我要说明一下什么是单元测试框架?

unittest 和 pytest 都是单元测试框架。单元测试指的是在编程过程当中形成的对函数或者是类下面的方法进行测试的一个过程。

在不使用任何框架的前提下,其实也是可以进行单元测试的。比如我们可以通过 if 判断
、异常处理或者是其他的流程控制来表示测试是否通过。

 def add(a, b):
     return a + b
     
 def test_add():
     ret = add(3, 4)
     if ret == 7:
         print("add 函数的测试通过")
     else:
         print("add 函数的测试失败")

如果要运行这个用例,需要手工调用 test_add 这个函数:

 test_add()

接下来,使用 python 运行这个文件,就能得到测试结果:

 python test_add.py

虽然说上面我们通过 if 判断,对一个函数进行了测试,而且得到了测试结果,但是流程是比较复杂的:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值