当前位置:首页 > 技术知识 > 正文内容

python自动化-pytest测试框架_pytest自动化框架目录

maynowei6个月前 (08-26)技术知识53

pip介绍

pip是Python 中的标准库管理器。它允许你安装和管理不属于 Python标准库的其它软件包

Python3的3.4版本以及Python2的2.7.9 版本开始,pip 被直接包括在Python 的安装包内

pypi 托管了大量非常流行的库 (www.pypi.org)

pip命令

  • pip help 帮助
  • pip install 安装
  • pip install -U 包名 升级包
  • pip uninstall 卸载
  • pip list 列出所有的包文件
  • pip download下载包
  • pip search requests 搜索包

python虚拟环境

输入:python -m tutorial-env

进入相关目录:cd tutorial-env

立即生效 source bin/activate,虚拟环境就生效

pyChram基于本地python环境生成对应python虚拟环境

pytest介绍

  • 一个很成熟的全功能的python测试框架
  • 简单灵活,容易上手;
  • 支持参数化;
  • 测试用例的skip和xfail,自动失败重试等处理
  • 支持简单的单元测试和复杂的功能测试,还可以用来做selenium/appnium等自动化测试、接口自动化测试(pytest+requests);
  • pytest具有很多第三方插件,并且可以自定义扩展,比较好用的如pytest-allure(完美html测试报告生成),pytest-xdist(多CPU分发)等;
  • 可以很好的和jenkins集成;

pytest测试用例的识别

  • test开头如: test_*.py
  • test结尾如:*_test.py
  • Test*类包含的所有test_*的方法(测试类不能带有init 方法)
  • 不在class中的所有的test_*方法

安装命令:pip install pytest

创建第一个case

使用-v 插件详细的执行日志 pytest -v

pycharm配置pytest环境

安装完成后使用的为pytest的解释器

参数化:ab为需要参数化的变量值,()内为需要赋予的值

pytest的装饰器,用于参数传递

pytest的数据参数化

  • @pytest.mark.parametrize(argnames,argvalues)
  • argnames:要参数化的变量,string (逗号分割),list, tuple
  • argvalues:参数化的值,list, listituple]

使用string

使用list ,tuple

pytest-yaml 参数化

安装pyyaml包

新建测试yaml文件

打开yaml的文件

相关文章

C++ 原子操作与锁的深度解析:为什么原子操作并非万金油?

大噶好,我是henry,今天来和大家浅浅聊一下为啥C++原子操作并非万能钥匙,原因有三,且听我娓娓道来:一、原子操作的线程安全性C++11 的 std::atomic 确实为单个变量的线程安全操作提供...

聊聊并发编程: Lock(并发锁有哪些)

之前学习了如何使用synchronized关键字来实现同步访问,Java SE 5之后,并发包中新增了Lock接口(以及相关实现类)用来实现锁功能,它提供了与synchronized关键字类似的同步功...

centos系统安装oracle简易客户端instantclient

一、目录1:centos 环境准备2:instant client 下载3:instant client 安装4:instant client 配置5:测试连接二、安装步骤1:zip,unzip命令安...

PL/SQL Developer连接Oracle数据库详解

序言:oracle数据库比较难搞,好不容易安装上了,但是怎么连接呢,直接在服务器里用自带的命令行操作太繁琐,所以PL/SQL Developer客户端的好处就显而易见了,今天和大家聊聊客户端具体配置方...

Oracle 11g安装教程完整版(oracle 11g 安装教程)

由于工作需要,将安装的经验分享给大家。第一步:首先准备安装文件包:Oralce 11.2.0.4 64bit和plsqldev1405x64如图所示:第二步:将2个文件解压到同一个目录,如图所示:第三...

oracle和mysql的优缺点对比(oracle和mysql哪个简单)

oracle的优缺点优点:开放性:oracle 能所有主流平台上运行(包括 windows)完全支持所有工业标准采用完全开放策略使客户选择适合解决方案对开发商全力支持;可伸缩性,并行性:Oracle...