当前位置: 首页 > news >正文

网站开发成本估计广州网站推广平台

网站开发成本估计,广州网站推广平台,深圳中企动力,查经互动平台前言 在目前互联网公司中,都会存在多个测试环境,那么当我们编写的自动化想要在多套测试环境下进行运行时,如何使用?大多数人想到的可能是通过将我们自动化代码中的地址修改成不同环境,但是这时候就会增加一些工作量&am…

前言

在目前互联网公司中,都会存在多个测试环境,那么当我们编写的自动化想要在多套测试环境下进行运行时,如何使用?大多数人想到的可能是通过将我们自动化代码中的地址修改成不同环境,但是这时候就会增加一些工作量,每次运行不同的环境,都需要进行再配置文件中进行修改地址,这样很不方面,今天小编介绍一种pytest的钩子函数,这个函数可以帮助我们很容易的解决这个问题。

pytest_addoption 

  pytest_addoption是pytest的钩子函数之一,用于为pytest添加自定义选项,并将这些选项传递给测试用例。可以通过修改pytest的配置文件(pytest.ini)或使用命令行参数来设置这些选项。pytest_addoption该函数一般需要和pytest的fixture内置函数request中的request.config.getoption(获取命令行参数信息)进行结合使用。

  在上述问题中,我们可以通过在命令行参数中对测试环境地址进行修改,这样就可以在不修改配置文件的情况下,只通过命令行参数进行在不同的测试环境中执行相同的自动化代码。

def pytest_addoption(parser):parser.addoption("--anjing",action="store",default="dev",help="通过'anjing'添加自定义命令行参数名称")

参数介绍

pytest_addoption中常用到的一些参数介绍

name:表示自定义命令行参数的名称,一般通过“--xxx”来使用;

action:表示命令行中遇到此参数时要采取的存储该参数对应的参数值的基本操作类型,默认为“store”;

default:表示如何命令行中没有传入该参数的值,则取默认值

help:对参数作用的简介和说明

使用方法

关于pytest_addoption的一些简介和用途已经介绍完毕了,接下来跟着小编一起查看如何使用pytest_addoption来解决我们的问题。

  1. 需要在conftest.py文件中进行创建一个pytest_addoption函数,对其进行设置对应参数类型
  2. 通过pytest.fixture创建函数,获取命令行对应参数值
  3. 通过编写测试用例中调用对应的函数名称
  4. 命令行执行时,添加对应命令行参数

小编先列举下conftest.py文件中关于pytest_addoption的编写

# conftest.py文件
# coding:utf-8
import pytestdef pytest_addoption(parser):parser.addoption("--anjing", action="store", default="anjing", help="将'anjing'添加到pytest的配置参数中")parser.addoption("--env", action="store", default="dev", help="env:表示命令行参数内容,不填写默认输出default的值内容")
@pytest.fixture()
def anjing(request):return request.config.getoption("--anjing")@pytest.fixture()
def env(request):return request.config.getoption("--env")

再根据conftest.py文件中的内容编写对应的测试用例

# coding:utf-8
def test_01(anjing):if anjing == 'test':print('命令行传参成功!')else:print('命令行取默认值!')def test_02(env):if env == 'test':print('传参成功!')else:print('传参失败!')

通过cmd执行时候,后续进行添加了对应的命令行参数值,这里小编是对两个命令行参数都添加了值,那么如果不添加值会怎么样呢?

通过执行结果可以看出来,当我们没有添加参数时,这里小编忘记打印返回值了,其实会实际输出默认值,就是我们在函数中设置的default

我们上面使用的方法是通过XXX=XXX的格式来输出的,这里我们也可以通过--xxxx 值,参数和值之间通过空格进行输入,结果都是一样的。

案例展示

上述小编是介绍了如何使用,那么我们如何在接口项目中使用呢?小编这里通过一个简单的方法通过项目进行展示,这里小编通过将默认值值变成了请求成功的url地址,添加参数为错误的url地址

# conftest.py文件
# coding:utf-8
import pytest
def pytest_addoption(parser):parser.addoption("--url", action="store", default="http://apis.juhe.cn/simpleWeather/query",help="将'anjing'添加到pytest的配置参数中")@pytest.fixture()
def anjing(request):return request.config.getoption("--url")

conftest.py文件中我们将默认请求成功的地址写入到默认值中,然后继续编写接口请求地址,在添加一个命令行参数的函数

# test_01.py文件
# coding:utf-8
import requests
def test_01(anjing):data = {'city': "上海",'key': '331eab8f3481f37868378fcdc76cb7cd'}r = requests.post(anjing, data=data)result = r.json()['reason']assert result == '查询成功!'

通过cmd进行运行程序,我们先不添加任何命令行参数,让其请求默认参数值的内容,发现测试用例请求成功了。

接下来我们通过随便在命令行参数后跟一个不正确的url地址,去模拟请求,这里肯定是无法请求成功的,因为我们请求的百度,不能请求成功。(主要模拟测试环境场景)

总结

小编通过简单的方法介绍了如何使用pytest_addoption进行来模拟不同测试环境下,我们如何进行执行我们的测试用例,当然pytest_addoption的用途不仅仅只有这么多,具体如何使用,大家可以根据自己公司内容的项目进行结合使用。感谢您的阅读,希望本篇文章对您有所帮助。

http://www.hkea.cn/news/705851/

相关文章:

  • 汕头行业网站seo培训公司
  • 网站背景图片优化关键词歌曲免费听
  • 郑州做网站哪家专业我要发布信息
  • 西安做网站优化的公司石家庄seo按天扣费
  • 2022年西安封城通知自动app优化下载
  • 无锡做网站哪家公司好一个公司可以做几个百度推广
  • 专题网站建设工作关键词林俊杰无损下载
  • adobe 网站开发软件软文写作兼职
  • 英文网站建设 淮安免费培训网站
  • 隔离需要多少钱湖南网站seo找行者seo
  • wordpress简单企业站seo怎么刷排名
  • 网站建设与运维泉州全网推广
  • 网站建站哪个公司好一点营销咨询服务
  • 值得玩的网页游戏北京seo营销培训
  • 中国建设银行网站分期通百度推广登录平台网址
  • 公司内部网站源码新闻软文推广案例
  • vf建设银行网站谷歌seo排名
  • 如何申请商业服务器武汉seo工厂
  • 祥云平台英文网站微博指数查询入口
  • 公司网站建设准备资料今日重大财经新闻
  • 发布网站后备案免费网站建站页面
  • 浙江建设职业技术学院迎新网站做一个网站要多少钱
  • axure做网站好不好手机百度问一问
  • 开发微信小程序的流程广州seo优化电话
  • 小企业网站建设和管理全能搜
  • 无棣县建设局网站游戏优化大师下载安装
  • 小额贷款 网站模板品牌推广软文
  • 网站建设开发成本天津百度搜索网站排名
  • 做的好的营销型网站有哪些内容外贸网站外链平台
  • 东营网站建设预算价格百度网盘网页版入口官网