路径问题1、相对路径- 在代码迁移方面有着很大优势便于跨环境移植- 完美适配 CI/CD 流水线如报告都是放到相对路径中- 便于团队合作比如说父级目录修改了名字使用相对目录通过相对路径(file)等方法可以获取完整的目录结果如果不这样使用你有可能需要一级一级的取修改目录地址- 相对路径方便简洁使用绝对路径太长不好记2、os.path.dirname(file)获取的是你执行脚本时传入的那个路径的“目录部分”有可能是相对路径3、os.path.dirname(os.path.abspath(file))一定是绝对路径importos BASEDIRos.path.dirname(__file__)#可能为相对路径print(BASEDIR)BASEDIRos.path.dirname(os.path.abspath(__file__))#必须是绝对路径print(BASEDIR)数据问题数据有多种格式如excel、csv、json(都可以有多种组合)、数据库等方式读取数据json数据第一种data { 登录接口: [{desc: 登录成功,username: user1, psd: 123}, {desc: 授权失败-密码错误,username: user2, psd: 456}] } result [(item.get(username), item.get(psd)) for item in data[登录接口]] print(result) #结果[(user1, 123), (user2, 456)]json数据第二种data { 登录成功: {username: user1, psd: 123} } test_case[] for test_data in data.values(): test_case.append(tuple(test_data.values())) print(test_case) #结果[(user1, 123)]csv格式csv文件内容文件名login_test.csvusername,psd 13426251988,12345678 13426251987,1234567 13426251955,123456importcsv filedataBASEDIR\login_testtest_case_list[]withopen(filedata,encodingutf-8)asf:readercsv.reader(f)#读取csv数据包括首行test_case[]#初始化测试数据forrowinreader:test_case.append(tuple(row))#一行读取后转化为元组test_case_listtest_case[1:]#去掉首行print(test_case_list)#[(13426251988, 12345678), (13426251987, 1234567), (13426251955, 123456)]excel格式需要安装依赖库暂不介绍数据库连接数据库可以封装第三方连接数据库类传参为sql具体见https://blog.csdn.net/weixin_44073050/article/details/158540767?spm1011.2415.3001.5331
