Selenium pytest 参数化读取 csv 文件后出现元素定位失败问题请教

Lemon_107 · 2025年05月27日 · 最后由 Lemon_107 回复于 2025年05月28日 · 2265 次阅读

最近尝试使用现有系统中的简单功能进行 webUI 自动化练手,但是发现元素的定位经常出现各种问题,目前遇到的以下问题,一直找不到原因,可能因为技术也有限,想问问有没有小伙伴也遇到类似问题的呢?页面操作逻辑是:打开左侧导航进入页面,再操作按钮,输入表单信息进行提交。
1.第一种方式:使用数组进行传参,用例可以成功通过

2.第二种方式:使用读取 csv 文件,在该元素定位出现失败,请问是什么原因呢?



共收到 8 条回复 时间 点赞

你每一行数据读取出来好像还是作为一个字符串来处理的, 应该要按逗号做一下分割,匹配到三个字段里面?



两个结构都不一样啊

Jerry li 回复

我理解的是每一行数据读取出来的应该还是一个列表,所以 return 返回的是 [ [ , xxxx, 请输入厂商名称], [xxx, zdia, 厂商码格式:5 至 10 位字母或数字,必须以字母开头], [xxxx, xxxx,操作成功] ],这样是不是也会像第一种方法中的元组那样匹配到三个字段里面去了呢

fox 回复

这里没太看懂,结构不一样指的是什么呢,我理解的是将每行数组添加到列表中去

Lemon_107 回复

你需要的是列表,但是直接从 CSV 文件里面读取出来的就是一行字符串啊, 所以你要通过逗号去 split 成列表。

大概明白你的意思了,我试了下,读取到的每行数据好像就是一个列表了,列表不能用 split 进行分割,我直接将每行数据转换成元组,不过还是报相同的错误。

Lemon_107 回复

你把读出来的每个 row 打印出来就知道了 , 自己调试一下吧。
先把这个 get data 的方法给调通。

Jerry li 回复

嗯嗯我再试试,谢谢~

需要 登录 後方可回應,如果你還沒有帳號按這裡 注册