本套代码和逻辑 是本人的劳动成果,如果有转载需要标注,
非常适合公司做项目的同学!!!小白也可以学哦!
1.项目目录
2.公共方法的封装
2.1如果不用配置文件 可以使用这个方法进行封装--但是有一定的缺陷!!!!
import requests METHODS = ['GET', 'POST', 'HEAD', 'TRACE', 'PUT', 'DELETE', 'OPTIONS', 'CONNECT', 'PATCH'] # 可以不使用---- class HTTPClient (object): def __init__(self, url, method='GET', headers=None, cookies=None): """headers: 字典。 例:headers={'Content_Type':'text/html'},cookies也是字典。""" self.url = url self.session = requests.session () self.method = method.upper () if self.method not in METHODS: raise Exception ('不支持的method:{0},请检查传入参数!'.format (self.method)) self.set_headers (headers) self.set_cookies (cookies) def set_headers(self, headers): if headers: self.session.headers.update (headers) def set_cookies(self, cookies): if cookies: self.session.cookies.update (cookies) def send(self, params=None, data=None, **kwargs): # urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning) response = self.session.request (method=self.method, url=self.url, params=params, data=data, verify=False, **kwargs) response.encoding = 'utf-8' # logger.debug('{0} {1}'.format(self.method, self.url)) # logger.debug('请求成功: {0} {1}'.format(response, response.text)) return response
2.2为什么要用yaml去做全局数据的配置
看我博客yaml的好处 https://www.cnblogs.com/zsplovezsp/p/12443036.html
3.测试用例和测试数据的格式
4.其他的就很简单了就不做,描述了--如果有想学python和测试开发,测试自动化的可以多关注一下
5,.pytest常用的方法
pytest常用的方法和原理
1.pytest的原理
2.pytest的规定
3.加载插件的方式
4.pytest插件的顺序
1.通过扫描命令行中的选项并阻止该插件被加载(即使内置插件也可以通过这种方式被阻止)。这是在正常的命令行解析之前发生的。-p no:name
2.加载所有的内置插件
3.通过预扫描命令行中,-p name选项,在实际解析命令行之前加载指定的插件
4.加载所有通过setuptools入口点注册的插件(可设置环境变量PYTEST_DISABLE_PLUGIN_AUTOLOAD进行禁用,仅加载明确指定的插件)
5.加载通过环境变量PYTEST_PLUGINS指定的所有插件
6.加载通过命令行推断出的所有confest.py文件:
-如果未指定测试路径,则使用当前dir作为测试路径
-如果存在指定测试路径,那么加载conftest.py和test */conftest.py,相对于第一个测试路径
注意,pytest是找不到藏在更深的子目录里的confest.py文件的,最好将confest.py保存在顶级的测试或者项目的根目录
7.通过在confest.py文件中的pytest_plugin指定的变量,递归加载所有的插件
5.安装路径
6.常用的插件简单描述
6.---------------------------------------------------
如果有想要代码和了解更多的可以加 _99Rampant