目录:导读
- 前言
- 一、Python编程入门到精通
- 二、接口自动化项目实战
- 三、Web自动化项目实战
- 四、App自动化项目实战
- 五、一线大厂简历
- 六、测试开发DevOps体系
- 七、常用自动化测试工具
- 八、JMeter性能测试
- 九、总结(尾部小惊喜)
前言
读取文件
1、读取csv文件
import csv #导入csv模块
class ReadCsv():
def read_csv(self):
item =[] #定义一个空列表
c = csv.reader(open("../commonDemo/test1.csv","r")) #得到csv文件对象
for csv_i in c:
item.append(csv_i) #将获取的数据添加到列表中
return item
r = ReadCsv()
print(r.read_csv())
具体步骤:
"""
拿到开发的代码
"""
class CalcClass():
def xf(self, a, b):
c = a * b
return c
def cf(self, a, b):
c = a / b
return c
# cc =CalcClass()
# ff = cc.xf(1,2)
# print(ff)
# gg = cc.cf(1,2)
# print(gg)
"""
要测试的数据
"""
2,3,6
"""
读取CSV文件
"""
import csv # 导入csv模块
class ReadCsv():
def read_csv(self):
item = [] # 定义一个空列表
c = csv.reader(open("../dataDemo/a.csv", "r", encoding="utf-8")) # 得到csv文件对象
for csv_i in c:
item.append(csv_i) # 将获取的数据添加到列表中
return item
# r = ReadCsv()
# print(r.read_csv())
"""
测试用例+生成测试报告代码
"""
from readDemo.readcsv import ReadCsv
import pytest
from demo.calcDemo import CalcClass
import os
import allure
r = ReadCsv()
rr = r.read_csv()
c = CalcClass()
class TestCsv():
def testcsv(self):
for i in rr:
bl = c.xf(int(i[0]), int(i[1]))
assert bl == int(i[-1])
if __name__ == '__main__':
pytest.main(["--html=./Csvreport.html", "test_csv.py"])
生成测试报告
2、读取xml文件
from xml.dom import minidom
class Readxml():
def read_xml(self,filename,onename,twoname):
root =minidom.parse(filename)
firstnode =root.getElementsByTagName(onename)[0]
secondnode=firstnode.getElementsByTagName(twoname)[0].firstChild.data
return secondnode
allure测试报告
Allure是一款轻量级并且非常灵活的开源测试报告框架。 它支持绝大多数测试框架, 例如TestNG、Pytest、JUint等。它简单易用,易于集成。
1、配置allure的环境变量
2、验证allure是否配置成功
3、安装allure
pip install allure-pytest
# allure-pytest是Pytest的一个插件,通过它我们可以生成Allure所需要的用于生成测试报告的数据
4、Allure常用的几个特性
@allure.feature # 用于描述被测试产品需求
@allure.story # 用于描述feature的用户场景,即测试需求
with allure.step(): # 用于描述测试步骤,将会输出到报告中
allure.attach # 用于向测试报告中输入一些附加的信息,通常是一些测试数据,截图等
5、具体效果
from readDemo.readcsv import ReadCsv
import pytest
from demo.calcDemo import CalcClass
import os
import allure
r = ReadCsv()
rr = r.read_csv()
c = CalcClass()
class TestCsv():
@allure.feature("两数相乘") # 用于描述被测试产品需求
@allure.story("乘除结果") # 用于描述feature的用户场景,即测试需求
def testcsv(self):
with allure.step("查看乘法结果"): # 用于描述测试步骤,将会输出到报告中
allure.attach("6", "附加信息") # 用于向测试报告中输入一些附加的信息,通常是一些测试数据,截图等
for i in rr:
bl = c.xf(int(i[0]), int(i[1]))
assert bl == int(i[-1])
if __name__ == '__main__':
pytest.main(['--alluredir', 'reportCsv/result', 'test_csv.py'])
split = 'allure ' + 'generate ' + './reportCsv/result ' + '-o ' + './reportCsv/html ' + '--clean' # 将测试报告转为html格式
os.system(split) # system函数可以将字符串转化成命令在服务器上运行
下面是我整理的2023年最全的软件测试工程师学习知识架构体系图 |
一、Python编程入门到精通
二、接口自动化项目实战
三、Web自动化项目实战
四、App自动化项目实战
五、一线大厂简历
六、测试开发DevOps体系
七、常用自动化测试工具
八、JMeter性能测试
九、总结(尾部小惊喜)
风雨不改初心,坚持必有回响。莫等待机会,拼搏方显勇者。每一次的努力,都是自我革新的开始。将梦想化作行动的力量,扬帆远航。
命运并非注定,而是创造。拿起勇气和决心,挥洒汗水与智慧,你将发现无尽可能。不论起点如何,只要奋斗不息,终将登上人生的巅峰,闪耀出属于自己的光芒!
每一次的坚持,都是自己的成长。勇敢追求梦想,不停止前进的脚步。困难只是暂时的阻碍,挑战是成长的机遇。相信自己的力量,勇往直前,终将收获辉煌的人生。