前言:这是我个人的学习记录,我是科班在读有一定基础,很多东西不会特别详细,欢迎大佬指点,也很高兴有人看了能得到帮助
目录
这一小节的内容是python自动化基础,首先需要掌握python的基本语法(学过别的语言上手很快),其次比较重要的就是pytest,Json,参数化改造等流程图左侧部分内容,涉及到自动化测试脚本编写。详细的案例介绍我将单独写一篇。
知识点流程图Central Topic-ProcessOn
https://www.processon.com/mindmap/66863419eb8f950664597fc9
基础的运用-登录案例:
test_login.py
import json
from tools import login
import pytest
from config import pro_path
# 1.定义一个函数,读取json文件,获取[{},{}]数据,然后转为[(),()]
def read_json():
with open(pro_path+'/data/login.json','r',encoding='utf-8') as f:
buf = json.load(f)
# print(buf) # [{},{}] --》 [(),()]
new_list = []
# 对列表进行遍历,读取列表的数据,转为元组,然后添加到新的列表
for i in buf:
# print(i) # {}
# 删除不需要数据desc
i.pop('desc')
# print(i) # {}
# 获取字典值组成的'列表' 字典.values()
my_list2 = i.values()
# print(my_list2) # []
# 将列表转成元组
my_tuple = tuple(my_list2)
# print(my_tuple)
# 将元组添加到列表
new_list.append(my_tuple)
# print(new_list)
return new_list
class TestLogin:
@pytest.mark.parametrize('x,y,z',read_json())
def test_login_ok(self,x,y,z):
assert z == login(x, y)
if __name__ == '__main__':
read_json()
login.json
[
{
"desc": "正确的用户名和密码",
"username": "admin",
"password": "123456",
"expect": "登录成功"
},
{
"desc": "错误的用户名",
"username": "root",
"password": "123456",
"expect": "登录失败"
},
{
"desc": "错误的密码",
"username": "admin",
"password": "123123",
"expect": "登录失败"
},
{
"desc": "错误的用户名和密码",
"username": "aaa",
"password": "123123",
"expect": "登录失败"
}
]