ruby - 使用 Ruby Selenium 从 csv 文件输入数据以完成操作,直到列表完成
问题描述
我对 selenium ruby/rspec 脚本相当陌生,我遇到了一个用例,需要在测试中从 csv 或 xlsx 文件中提取数据。任何有关如何解决此问题的帮助或建议将不胜感激。
测试将从 csv 文件中提取并从每一行输入数据以完成相同的操作。此特定文件包含单列“id”,并且需要重复相同的操作,直到使用该列中的所有值。以下是基本步骤...
- 用户登录
- 用户从文件中提取第一个值(id)以在文本字段中搜索
- 用户针对此 ID 完成操作
- 用户返回文本字段并从同一文件的第二行提取值
- 用户针对此 ID 完成操作
这将重复,直到所有行都完成
这是否可以重复完成相同的方法但通过文件中的数据进行过滤?
您将如何将 csv 文件拉入脚本并在整个过程中专门获取第一个值(和后续值)?
我知道这很模糊,但我没有在 SO 和在线研究中看到任何这样的例子。任何建议或示例将不胜感激。
解决方案
我不确定我是否完全理解您的问题,但我可以尝试为您指明正确的方向。
Ruby 有一个内置的 csv 解析器,您可以在这里阅读:CVS 类
第一个示例似乎为您提供了您正在寻找的功能。我认为在您的示例中,您会想要执行以下操作:
CSV.foreach("path/to/file.csv") do |row|
#I'm assuming ID is the first element in each row
id = row.first
method_that_does_stuff(id)
# assert that stuff has happened ...
end
这对你有帮助吗?
推荐阅读
- lua - 尝试理解 self 关键字以及如何在函数链中使用它 - LUA
- css - CSS - 帮助我理解“构造样式表”和#shadow-root
- c++ - 迭代一个字符串直到 int 或 char
- javascript - 浏览器扩展:禁用或绕过服务人员
- javascript - 由于未清除 fetch 处理程序中的超时而导致的内存泄漏混淆
- algorithm - 红黑树的性质
- electron - 无法将 http 请求中的 post 变量从 Electron 传递到 Yii API
- android - 为什么 DragableScrollableSheet 在开始时会留下空间?-扑
- c++ - macosx + conan + cmake 构建导致架构 x86_64 的未定义符号?
- android - 可绘制文件在深色模式下不会改变颜色