专栏首页开源优测Pytest基础指南之APIs集

Pytest基础指南之APIs集

在前文我们初步介绍了Pytest基础指南之介绍、环境及安装及Pytest与unittest如何选择的问题(Pytest基础指南之如何选择unitttest与pytest),本文将全面的对Pytest的API进行介绍,以便初学者能进一步全面了解Pytest的魅力。

学习一门语言、工具亦或框架,通过基础的介绍、环境、安装等文档后,应该需要全面的对其提供的功能特色、APIs等有一个大体的了解,形成一个总体的印象,这样就能更好的把握住其他能力,从而在后续的深入研习中就可以更好的理解其机制。

Pytest对外提供的API大体可以分为以下分类:

- Functions

- Marks

- Fixtures

- Hooks

- Objects

- Special Variables

- Environment Variables

- Configuration Options

下面对上述各类API进行简要的说明,以便大家了解其功能和作用,为后续掌握打下基础。

Functions

主要提供了pytest框架的公共的基础能力,例如当测试用例失败、跳过、异常、警告等等情况的处理方式。

Marks

标记可以用于将元数据应用于测试函数(注:不是fixture),然后fixture或插件可以访问这些函数。

Fixtures

Fixtures是可以被测试函数或其他Fixtures通过声明参数名的方式使用。

Hooks

Pytest提供了大量的hook出来,在你需要对pytest进行定制时,就可以通过重写hook函数来实现个性化的框架能力定制。

Objects

Pytest提供的各种基础结构、信息对象,所有的hook、Fixture均可以访问这些。

Special Variables

当在测试模块中定义全局变量时,pytest以一种特殊的方式处理某些全局变量。

Environment Variables

在Pytest中,提供了系列环境变量,用于改变、配置pytest的行为。

Configuration Options

在Pytest中我们可以将配置选项写在pytest.ini、tox.ini或setup.cfg文件中,这类配置文件通常放在你的项目的根目录下。

通常情况使用pytest.ini 或tox.ini文件作为配置文件,不推荐使用setup.cfg

在本文中,我并未列举出所有API大类下的具体的API,目的是期望大家能自己去先看一遍,后续再写出具体的使用文章,不然一篇文章的字数就太多了,阅读起来不怎么方便

本文分享自微信公众号 - 开源优测(DeepTest),作者:苦叶子

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-12-17

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Pytest基础指南之常用配置项及实例

    在前文Pytest基础指南之APIs集大体介绍了Pytest的API集以及大体能力,本文主要介绍其中的配置项这块,通过具体的实例来说明配置使用方法,当然了如果你...

    苦叶子
  • MySQL指南之基础知识

    张风捷特烈
  • 性能测试之进程调用

    进程主要是执行用户级别程序的环境,进程可以让内核多任务的处理,这样在一个操作系统上可以执行上千个进程。每个进程都有自己独立的进程PID,并且是唯一的。进程的创建...

    无涯WuYa
  • 基于 BDD 理论的 Nebula 集成测试框架重构(上篇)

    截止目前为止,在 Nebula Graph 的开发过程中,测试框架一共发生三次较大的改动,如下图所示。在不断的演进中,团队还是积累了一些经验和教训,希望借由此文...

    NebulaGraph
  • pytest 自动化测试框架(一)

    pytest 是一个成熟的全功能 Python 测试工具,可以帮助您编写更好的程序。它与 Python 自带的 Unittest 测试框架类似,但 pytest...

    霍格沃兹测试开发
  • MySQL指南之SQL语句基础

    张风捷特烈
  • Cypress基础指南

    下面我们看下Cypress完整的工作过程是怎么样的,为什么我们需要学习下Cypress,如图所示:

    苦叶子
  • REST API设计指导——译自Microsoft REST API Guidelines(二)

    另外:最近团队在做一些技术何架构的研究,视频教程只能争取周末多录制一点,同时预计在下周我们会展开一次直播活动,内容围绕容器技术这块。

    雪雁-心莱科技
  • 最强 NLP 预训练模型库 PyTorch-Transformers 正式开源:支持 6 个预训练框架,27 个预训练模型

    该项目支持 BERT, GPT, GPT-2, Transfo-XL, XLNet, XLM 等,并包含 27 个预训练模型。

    机器学习AI算法工程

扫码关注云+社区

领取腾讯云代金券