首页 > 编程语言 >pytest在python中的使用

pytest在python中的使用

时间:2023-03-28 19:22:06浏览次数:38  
标签:文件 python py fixture pytest 测试 使用 test

pytest简介:pytest是python的第三方单元测试框架,比自带的unittest更简洁和高效,同时兼容unittest框架。   pytest测试用例编写规则:   1、测试文件以test_开头(以_test结尾也可以)   2、测试类以Test开头,并且不能带有__init__方法   3、测试函数以test_开头   4、断言必须使用assert   如图:   

 

在pytest中可以直接写测试方法,如图:

    

Pytest.main()会自动把当前模块下符合要求的用例以及子模块下符合要求的用例进行执行

 

pytest中的fixtrue可以把fixture看做是资源,在你的测试用例执行之前需要去配置这些资源,执行完后需要去释放资源。类似unittest中的setup和teardown功能。如图:

      

 

Pytest中fixture的参数介绍:

  autouse:在一个session内所有的test都会自动调用当前的fixture,默认为false

      

 

  name:设置fixture的名称,不设置默认为装饰函数的名称

      

 

scope:作用范围设置范围后,会根据设置的范围去触发执行。

范围可选值:

  function:每个方法(函数)都会执行一次。(默认)

  class:每个类都会执行一次。类中有多个方法调用,只在第一个方法调用时执行。

      

 

 

  module:一个.py文件执行一次。一个.py文件可能包含多个类和方法。

  package/session:多个文件调用一次,可以跨.py文件。

params:传入参数,接收一个列表,列表中每个数据都作为用例的输入

      

 

 

ids:测试字符串id的列表,每个测试字符串id对应于params,默认为参数值

      

 

conftest.py文件应用:

  pytest中的fixture是pytest用于将测试前后进行预备,清理工作的代码分离出核心测试逻辑的一种机制。但是我们更加希望的是在一个测试套件中,能够共享fixture的机制,这样一个测试套件里面的所有测试点都能够共同使用。在pytest中可以通过conftest.py来共享fixture,如果希望多个测试文件共同使用一个fixture时候,可以在该目录下创建conftest.py文件。

      

 

 

 

 

 

 

 

 

 

 

标签:文件,python,py,fixture,pytest,测试,使用,test
From: https://www.cnblogs.com/jiujiu9909/p/17266390.html

相关文章

  • golang pprof监控系列(2) —— memory,block,mutex 使用
    golangpprof监控系列(2)——memory,block,mutex使用大家好,我是蓝胖子。profile的中文被翻译轮廓,对于计算机程序而言,抛开业务逻辑不谈,它的轮廓是是啥呢?不就是cpu,内存,各......
  • Python-开始学习python
    为了之后服务外包杯团队合作项目,我今天开始学习python.首先要安装开发环境和编译器一个在python官网下载https://www.python.org/在cmd中输入python测试安装是否成功......
  • 深入理解 python 虚拟机:pyc 文件结构
    深入理解python虚拟机:pyc文件结构在本篇文章当中主要给大家介绍一下.py文件在被编译之后对应的pyc文件结构,pyc文件当中的一个核心内容就是python字节码。pyc......
  • python系列004
    .updata()方法,对数字的键值无效?解决:a.update({2:"哈哈哈"})//dict.update()要求传入一个dict,a.update(2="nonono")并不是;//然而,以字符作为键值却可以使用上述注释的......
  • Python 文件处理
    文件处理是任何Web应用程序的重要组成部分。Python有几个用于创建、读取、更新和删除文件的函数。文件处理在Python中使用文件的关键函数是 open() 函数。open......
  • # yyds干货盘点 # Python中的这个super这行是啥意思啊?
    大家好,我是皮皮。一、前言前几天在Python白银交流群【Ming】问了一个Python基础的问题,这里拿出来给大家分享下。二、实现过程这里【carpediem】给了一个思路,如下图所示:自动......
  • 跟着查老四学Python Day 2:控制结构与循环
    老猫:这是之前我们制定的第二天的学习计划第二天:控制结构与循环学习条件判断(if-elif-else结构)学习循环结构(for循环、while循环)学习列表(list)和元组(tuple)的基本操作动手编写一......
  • 转载:JavaScript文字转语音_SpeechSynthesisUtterance语音合成的使用
    原文链接:https://mp.weixin.qq.com/s?__biz=MjM5MDA2MTI1MA==&mid=2649118413&idx=3&sn=3385dee75bcffa307baa79c3cde4095b&chksm=be587160892ff87605cf347eddad2ad7a55a95......
  • 使用eNSP模拟器完成SSH
    写在前:在前面的Telnet实训中,如果你使用了Wireshark抓包软件,你会看见这样的画面,详见图1。图1出现上述图片情况,说明Telnet在数据传输过程中是明文传输。数据包发送过程中......
  • CommonJS和ES6中的导入导出使用
    1.CommonJS使用exportsconstname='张三'functionFn(){return1}//导出单个数据exports.name=nameexports.Fn=Fn//导入数据//可使用解构cons......