我前段时间发布了一个 requests 接口框架,有兴趣的话可以看看,也是用的 excel 作为数据驱动
https://testerhome.com/topics/37238
我这块做法是读取 excel 时,把每一行的数据转化成了一个字典格式数据,后面用的时候就可以直接找对应的 key 的 value 就好了;然后 jsonpath 单独提取出来,单独对请求参数和相应做处理,放到测试类属性里面当作用户自定义变量使用;
我看你最后是还要把结果回写 excel,我这里其实不太建议这样做,回写我理解为就是输出测试结果生成报告,你可以用 pytest 自带的测试报告或者集成 allure 也可以
问一下 gpt 就行了
你可以将公共的代码抽出来封装成一个方法,并将需要传入的 excel 的路径作为参数。接下来我将为你提供一个示例代码,帮助你理解如何处理 all_val 字典。
首先,你可以定义一个公共方法(例如 execute_testcases
)来处理 Excel 数据。这个方法可以接收 excel 文件路径作为参数,然后在其中调用所有需要执行的用例。
在这个方法中,你可以实例化一个空的字典 all_val
,用于保存接口关联所需要的数据。然后,你可以在每个用例的循环中,将需要保存的数据添加到 all_val
字典中。
接下来,你可以将 all_val
作为参数传递给具体的接口关联方法,以便进行处理。在这个方法中,你可以使用该字典中的数据来执行接口关联的操作。
下面是一个示例代码,演示了如何处理公共的代码并使用 all_val
字典:
def execute_testcases(excel_path):
all_val = {} # 创建空字典
testcases = read_excel(excel_path) # 从 excel 文件中读取用例
for testcase in testcases:
# 执行每个用例的操作
# 将需要保存的数据添加到 all_val 字典中
# 在这里实现将数据存入 all_val 的逻辑
# 在所有用例执行完毕后,将 all_val 字典作为参数传递给接口关联方法
process_interface_association(all_val)
def process_interface_association(all_val):
# 在这里实现接口关联的操作逻辑
# 可以使用 all_val 字典中的数据进行处理
# 将 all_val 中的数据关联到接口中
# 调用公共方法并传入 excel 文件路径
execute_testcases('path/to/excel')
请根据你的实际需求,在示例代码中添加相应的逻辑,以实现你想要的结果。希望这个示例能帮到你!
excel 管理接口方便吗
为啥不用 yaml 管理
我是想问管理接口的方式 有没有更好的,这个帖子中,是使用 excel 进行接口管理的,真的很不方便维护,特别是用例和接口之间的变动关联,以及接口多了之后,快速定位某一个接口,等等。excel 显然是不太方便的,有没有其他更好对接口进行管理的方式