在之前的文章中主要分享了 pytest 的实用特性,接下来讲 Pytest 参数化用例的构建。 如果待测试的输入与输出是一组数据,可以把测试数据组织起来用不同的测试数据调用相同的测试方法。参数化顾名思义就是把不同的参数,写到一个集合里,然后程序会自动取值运行用例,直到集合为空便结束。pytest 中可以使用 @pytest.mark.parametrize 来参数化。 parametrize(
前言:  为了提高代码的复用性,我们在写测试用例的时候,会用到函数,然后把不同的用例去调用这个函数。比如登录操作,大部分的用例都会先登录,那就需要把登录单独抽出来写个函数,其他用例全部调用这个函数就行,但是登录账号不能写死,有时候我想用账号A登录,执行用例1,用账号B登录执行用例2,所以需要对函数。1、登录函数把登录单独成立,写一个函数,2个参数user和psw,写用例的时候调用登录函数
转载 2024-03-21 10:33:23
173阅读
命令行-k参数.png3、-m标记(marker)用于标记测试并且分组,以便快速选中并运行。使用 @pytest.mark 来标记。可以使用 -m “mark1 and mark2” 同时选中贷有这两个标记的所有测试用例。使用 -m “mark1 and not mark2” 则会选中有mark1的测试用例,而过滤掉 mark2 的测试用例。使用 -m “mark1 or mark2” 选中带有
前面已经讲过如何运行测试用例,不管用哪种方式,都可以支持这些运行参数。你可以通过-h或--help查看所有的命令,包含了所有插件的:pytest --version # 显示 pytest 的版本 pytest -h | --help1. 查找用例模块或目录 pytest 除了参数以外,在 pytest 后面没有跟任何参数的字符串都会认为是文件或者目录,会去这些指定的目录或文件中查找用例。py
转载 2024-03-19 13:17:39
41阅读
import pytest def read_yaml(): return ['成龙','张三','李四'] # ids 为参数取 别名 @pytest.fixture(scope="function", autouse=False, params=r
原创 2023-03-28 22:12:57
132阅读
<!doctype html>测试接口测试接口import requests except = {'title':'V2EX'} response = requests.get(url='https://www.v2ex.com/api') if response.json()['title'] == except['title']: print('断言成功') assert 1
1. Step definition is not found E pytest_bdd.exceptions.StepDefinitionNotFoundError: Step definition is not found: When "xxxudiences"". Line 15 in sce
转载 2021-02-10 11:40:00
422阅读
2评论
目录ini的介绍ini的简单和使用自定义mark标签自定义运行时的默认参数格式化日志自定义测试文件命名规则自动以测试类的命名规则自定义函数的命名规则总结: ini的介绍pytest官网pytest.ini 是pytest框架的主配置文件,实际生产中主要用来规范日志的格式或日志文件保存的位置,增加用例标签等等,总之简单易用,属于pytest学习的重要知识点。ini的简单和使用PS:pytest.i
不想原测试方法有任何改动,或全部都自动实现自动应用,没特例,也都不需要返回值时可以选择自动应用的方法解决:使用fixture中的参数autouse=True实现步骤:在方法上面加@pytest.fixture(autouse=Ture)参数化场景:测试离不开数据,为了数据灵活,一般数据都是通过参数的解决:使用fixture中的固定参数request传递步骤:在fixture中添加@pytest.
BDD library for the py.test runnerpytest-bdd implements a subset of the Gherkin language to enable automating project requirements testing and to facilitate behavioral driven development.pytest-bdd实现
转载 2021-03-02 16:46:00
602阅读
17点赞
1评论
前言 命令行参数是根据命令行选项将不同的值传递给测试函数,比如平常在cmd执行"pytest --html=report.html",这里面的"--html=report.html"就是从命令行传入的参数。对应的参数名称是html,数值是report.html. conftest配置参数 1.首先 ...
转载 2021-09-13 16:32:00
2700阅读
2评论
前言为了提高代码的复用性,我们在写用例的时候,会用到函数,然后不同的用例去调用这个函数。比如登录操作,大部分的用例都会先登录,那就需要把登录单独抽出来写个函数,其它用例全部的调用这个登录函数就行。但是登录的账号不能写死,有时候我想用账号1去登录,执行用例1,用账号2去登录执行用例2,所以需要对函数。登录函数把登录单独出来,写一个函数,2个参数user和pwd,写用例的时候调用登录函数,输
转载 2024-03-25 14:40:47
36阅读
[TOC] 运行环境: pip insall pytest pytest bdd pytest selenium BDD介绍 BDD行为驱动是一种敏捷开发模式, 重点在于消除开发/测试对需求了解的歧义及用户场景的验证. 需求描述/用户场景 BDD提供一套标准的需求及用户场景表达语法, 一般为Feat
原创 2021-07-29 16:36:11
2045阅读
Feature: stage 05 LSH T6901: Adding AudienceExamples:| account_name |# | v216insight ||JASQIA-PELID||JASQIA-PPID| Scenario: LSH T6901 01 : Check and d
转载 2021-02-24 15:02:00
318阅读
2评论
前言 为了提高代码的复用性,我们在写用例的时候,会用到函数,然后不同的用例去调用这个函数。 比如登录操作,大部分的用例都会先登录,那就需要把登录单独抽出来写个函数,其它用例全部的调用这个登录函数就行。但是登录的账号不能写死,有时候我想用账号1去登录,执行用例1,用账号2去登录执行用例2,所以需要对函 ...
转载 2021-09-13 15:35:00
902阅读
2评论
前言上篇博客说到命令行执行测试用例的部分参数如何使用?今天将继续更新其他一些命令选项的使用,和pytest收集测试用例的规则!Pytest执行用例命令行参数--collect-only:罗列出所有当前目录下所有的测试模块,测试类及测试函数--tb=style:屏蔽测试用例执行输出的回溯信息,可以简化用例失败时的输出信息。style可以是 on,line,short,具体区别请自行体验 &
前言为了提高代码的复用性,我在写用例的时候,会用到函数,然后不用的用例去调用这个函数比如登录操作,大部分的用例都会先登录,那就需要把登录单独用函数写出来,其他用例全部的调用这个登录函数就行但是登录的账号不能写死,有时候我想用账号1去登录,执行用例1,用账号2登录执行用例2,所以需要对应的去完成登录一、登录函数把登录单独拿出来,写一个函数,2个参数user和pwd,输入几组user,输入几
转载 2024-04-03 13:10:20
124阅读
 特点1. 采用pytest.mark.xxx(参数)标志所需要的参数,然后在fixture中可以做一些逻辑处理 2. fixture采用request获取参数 3. 的个数可以是多个,类型可以为简单类型或者复杂对象 示例简单类型#!/usr/bin/env python # -*- coding: utf-8 -*- # @Author : 韧 import py
原创 2024-02-28 14:24:42
65阅读
Menu: python pytest测试实战 3 conftest.py 完成数据共享 不同目录可以创建自己的conftest.py文件 作用域: 对当前同级目录下所有的文件及包下的所有测试文件,测试方法生效, 如果同级目录下没有conftest.py,会找上级目录或者上上级目录的 conftest.py里的fixture方法。不会找兄弟目录。#co
前言 命令行参数是根据命令行选项将不同的值传递给测试函数,比如平常在cmd执行"pytest html=report.html",这里面的” html=report.html“就是从命令行传入的参数 对应的参数名称是html,参数值是report.html conftest配置参数 1.首先需要在c
原创 2021-06-03 11:43:35
339阅读
  • 1
  • 2
  • 3
  • 4
  • 5