简介:
httprunner是一款基于Python的开源工具。
httprunner目前可以支持http/https协议,使用yaml/json格式的文件编写用例,封装了接口访问方法和pytest测试框架,可以结合allure生成测试报告。
主要特点
继承的所有强大功能requests,只需以人工方式获得乐趣就可以处理HTTP(S)。
以YAML或JSON格式定义测试用例,pytest以简洁优雅的方式运行。
在HAR支持下记录并生成测试用例。
支持variables/ extract/ validate/ hooks机制,以创建非常复杂的测试方案。
使用debugtalk.py插件,任何功能都可以在测试用例的任何部分使用。
使用jmespath,提取和验证json响应从未如此简单。
有了pytest,数百个插件随时可用。
使用allure,测试报告可以非常强大。
通过重复使用locust,您可以进行性能测试,而无需进行额外的工作。
支持CLI命令,与完美结合CI/CD
安装前置条件:
安装Mysql
#wget http://repo.mysql.com/mysql57-community-release-el7-10.noarch.rpm
#rpm -Uvh mysql57-community-release-el7-10.noarch.rpm
#yum install -y mysql-community-server
#systemctl start mysqld.service
如果Centos 8 安装Mysql5.7,以上步骤换成如下:
#dnf remove @mysql --关闭Centos8中MySQL默认的AppStream仓库
#dnf module reset mysql && sudo dnf module disable mysql
#vim /etc/yum.repos.d/mysql-community.repo 添加如下:
[mysql57-community]
name=MySQL 5.7 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch/
enabled=1
gpgcheck=0
[mysql-connectors-community]
name=MySQL Connectors Community
baseurl=http://repo.mysql.com/yum/mysql-connectors-community/el/7/$basearch/
enabled=1
gpgcheck=0
[mysql-tools-community]
name=MySQL Tools Community
baseurl=http://repo.mysql.com/yum/mysql-tools-community/el/7/$basearch/
enabled=1
gpgcheck=0
#dnf --enablerepo=mysql57-community install mysql-community-server
#systemctl enable --now mysqld.service --开启服务,自动重启
#grep 'A temporary password' /var/log/mysqld.log |tail -1 -- 获取初始化密码
#grep 'A temporary password' /var/log/mysqld.log |tail -1 获取随机密码
#mysql -uroot -p 修改密码
因为MySQL的密码规则需要很复杂,我们一般自己设置的不会设置成这样,所以我们全局修改一下
#mysql> set global validate_password_policy=0;
#mysql> set global validate_password_length=1;
#mysql>ALTER USER 'root'@'localhost' IDENTIFIED BY 'yourpassword';
授权其他机器远程登录
#mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
#mysql> FLUSH PRIVILEGES;
支持中文
#vim /etc/my.cnf
[mysql]
default-character-set=utf8
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
default-storage-engine=INNODB
character_set_server=utf8
symbolic-links=0
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
#service mysqld restart 重启生效
防火墙开放3306
#firewall-cmd --state
#firewall-cmd --zone=public --add-port=3306/tcp --permanent
#firewall-cmd --reload
卸载MySQL仓库
一开始的时候我们安装的yum,每次yum操作都会更新一次,耗费时间,我们把他卸载掉
#yum -y remove mysql57-community-release-el7-10.noarch
安装jdk
#wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.rpm
#chmod +x jdk-8u131-linux-x64.rpm
#rpm -ivh jdk-8u131-linux-x64.rpm
#vim /etc/profile
export JAVA_HOME=/usr/java/jdk1.8.0_131
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
#source /etc/profile
#yum install libffi-devel -y
#yum install zlib* -y
#yum install gcc -y
#yum install mysql-devel -y
可能报错:
--> Processing Dependency: mariadb-libs(x86-64) = 1:5.5.68-1.el7 for package: 1:mariadb-devel-5.5.68-1.el7.x86_64
--> Finished Dependency Resolution
Error: Package: 1:mariadb-devel-5.5.68-1.el7.x86_64 (os)
Requires: mariadb-libs(x86-64) = 1:5.5.68-1.el7
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
#yum install python-deve