python实践日记二
今天学习写pytest用例的时候,看到别人的代码类中的定义:ROBOT_LIBRARY_SCOPE = ‘Global’
然后学习了解了一下这一句代码的意思,原来是RobotFramework自定义关键字
- ROBOT_LIBRARY_SCOPE为ROBOT库范围
这个范围有三个等级,分别是TEST CASE、TEST SUITE、GLOBAL三个等级,默认是TEST CASE;而刚开始学习自定义库,所看到的基本都是GLOBAL这个等级 - 定义的作用
在测试库中声明等级的作用是,在调用这个类的方法,就会实例化这个类,而不需要单独初始化类的实例对象
–TEST CASE:在每个test case中引用都会实例化一次,只要用例中用到了定义类的方法
–TEST SUITE:在suite中引用,只会实例化一次,也就是说10个test case都引用了这个类的方法,但是只有第一个test case是调用的时候实例化,后续的共用,不会重复初始化
–GLOBAL:在全局只实例化一次,调用一次后,在所有suite中引用、test case中引用都不会再实例化
这种常见的用法就是用于测试类初始化session对象,一般情况下全局测试接口的session头都是一致的,所以我们只需要初始化一次,然后所有的请求都会使用这个session头,如下图:
最后学习中明白了一个用法,测试模块的__init__.py一定是在测试用例的py文件之前执行的,模块内部的py文件想要使用__init__.py文件中定义的全局变量或者全局方法,仍然要使用from…import进行导入,才能使用,如:from testcases import headers,host#导入定义的变量
from testcases import mysqlConn,init_data,business_id,device_auth#导入定义的方法和变量集合
python实践日记二相关推荐
- Python学习日记(二十八) hashlib模块、configparse模块、logging模块
hashlib模块 主要提供字符加密算法功能,如md5.sha1.sha224.sha512.sha384等,这里的加密算法称为摘要算法.什么是摘要算法?它又称为哈希算法.散列算法,它通过一个函数把任 ...
- Python学习日记(二十六) 封装和几个装饰器函数
封装 广义上的封装,它其实是一种面向对象的思想,它能够保护代码;狭义上的封装是面向对象三大特性之一,能把属性和方法都藏起来不让人看见 私有属性 私有属性表示方式即在一个属性名前加上两个双下划线 cla ...
- Python学习日记(二十四) 继承
继承 什么是继承?就是一个派生类(derived class)继承基类(base class)的字段和方法.一个类可以被多个类继承;在python中,一个类可以继承多个类. 父类可以称为基类和超类,而 ...
- Python学习日记(二十二) 初识面向对象
引子 假设我们要开发一个关于飞机大战的游戏,那么游戏的里面就会有两个角色,分别是属于玩家操控的战机和敌方的战机,并且两个战机都有不同的技能或攻击方式,现在我们用自己目前所学的去写出下面的这些代码: d ...
- Python学习日记(二十三) 类命名空间和组合
类命名空间 在一个类中它的函数(方法)属于动态属性,直接定义的变量属于静态属性 首先先定义一个类,并在这个类里面加入静态变量.属性等然后将一个对象实例化 class Fighter: #定义一个战机的 ...
- Python学习日记(二十七) 反射和几个内置函数
isinstance() 判断isinstance(obj,cls)中obj是否是cls类的对象 class Person:def __init__(self,name):self.name = na ...
- Python学习日记(二十五) 接口类、抽象类、多态
接口类 继承有两种用途:继承基类的方法,并且做出自己的改变或扩展(代码重用)和声明某个子类兼容于某基类,定义一个接口类interface,接口类中定义了一些接口名(就是函数名)且并未实现接口的功能,子 ...
- Python学习日记(二十一) 异常处理
程序中异常的类型 BaseException 所有异常的基类 SystemExit 解释器请求退出 KeyboardInterrupt 用户中断执行(通常是输入^C) Exception 常规错误的基 ...
- python实践项目(二)
练习1:逗号代码 假定有下面这样的列表: spam = ['apples', 'bananas', 'tofu', 'cats'] 编写一个函数,它以一个列表值作为参数,返回一个字符串.该字符串包含所 ...
- Python学习日记(二十九) 网络编程
早期的计算机通信需要有一个中间件,A要给B传东西,A必须要把信息传给中间件,B再把从中间件中拿到信息 由于不同机器之间需要通信就产生了网络 软件开发的架构 1.C/S架构 服务器-客户机,即Clien ...
最新文章
- bootstrap与Select2使用小结
- 从X86向X64迁移的一点心得
- 浅谈:Spring Boot原理分析,切换内置web服务器,SpringBoot监听项目(使用springboot-admin),将springboot的项目打成war包
- sicily 1068. Euro Efficiency
- Reuse library debug in Chrome - phase1 init phase
- sparseTM的公式理解
- 利用ZEBAR 软件生成ZPL 代码
- Python 计算彩色图像信噪比
- mysql数据库可以放pdb文件吗_pdb数据库文件的搜索结果-阿里云开发者社区
- html的实习报告,HTML实习报告
- 唯冠向苹果索赔100亿
- jquery的图片播放插件 - colorbox
- 学习Java第十九天(一):1、Java中的网络编程
- 从关山口到五道口(2019年清华计算机考研全程回顾+经验+总结)
- 中小企业发展电子商务的必要性
- matlab谐波电流测量,基于MATLAB的谐波电流检测方法的建模与仿真
- 变频电源3种电路结构介绍及电路图分享
- echarts的world.js世界地图,完整的俄罗斯地图+中国周边岛屿地图
- 《创践——大学生创新创业实任务》 单元测试_ 笔记
- 为什么模拟集成电路设计中会使用那么多的电流源?
热门文章
- oracle 计算标准差函数,Oracle数据库之使用oracle来计算方差及标准差
- windows10桌面壁纸的储存地址在哪里
- 第三次作业——K米评测
- easyscreen调用html,840D——EasyScreen输入密码跳转界面的编写-工业支持中心-西门子中国...
- APP开发流程都有哪些?
- C++定义一个描述员工(Employee)基本情况的类
- 网络冗余计算机,基于冗余计算机的冗余网络IP智能切换方法及系统与流程
- amd支持服务器内存,AMD专用内存和普通内存的区别是什么?
- Tuxera NTFS如何解决硬盘无法写入文件教程分享
- L298N、电机、单片机的线路连接(51、stm32程序)