Ruby/Watir - 从数组格式化打印

标签 ruby excel arrays watir

我正在使用 Watir 对网站进行一些自动化测试。这个特定的测试我从 Excel 工作表中提取一组 sku 数字,然后从该数组中随机选择一个作为我的测试。该号码被放入搜索字段中,它拉回了我的产品。

这是我的问题: 我从 Excel 中提取数据并在控制台中打印数据以验证是否收集了正确的数据。好的 当 sku 被放入网站的搜索框中时,它的格式如下: [“000000”]

我需要删除方括号和引号。

我研究了 pretty-print ,虽然这可以解决问题。这是我添加的漂亮打印品:

def pretty_print(q)
        q.group(1, '[','"','"',']') {
        q.seplist(self) {|v|
        q.pp v
      }
    }
   end

这是从数组中获取 sku 的代码,以及我尝试将上面的 pretty-print 方法应用于字符串“sk”:

puts = "Data path : " + path
  workbook = excel.Workbooks.Open(path)
  worksheet = workbook.WorkSheets(1)
  worksheet.Select 
  puts "getting 2D Array from column range a2:a100 in sheet 2"
  sku1 = worksheet.Range("a2:a5").Value
  puts (sku1)

  $count = 1

  $count.times do |count|
    sk = sku1[rand(sku1.length)] 

    method_name = :"test_#{count}_#{sk}"  
    define_method method_name do
      pp (sk)
      search_string = sk

非常感谢任何帮助!!!

最佳答案

创建 sk 时,它是一个数组而不是字符串。应该能够做到:

sk = sku1[rand(sku1.length)].to_s

关于Ruby/Watir - 从数组格式化打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3095455/

相关文章:

ruby-on-rails - 当加载根命名空间中的另一个同名类时,Rails 类加载会跳过命名空间类

ruby - 通过 RStakeout 运行 RSpec 时如何启用颜色?

vba - 如何在 VBA 中使用以编程方式创建的工作表函数

Java 将该变量视为 "final",即使它不是

java - 为什么使用 java 扫描仪从 txt 文件读取的字符串不等于相同的字符串?

ruby-on-rails - 在 Rails 3 中查找最新的记录

ruby - 编码数据太短无法加载 : Loading an array

MySQL、Excel 和 Windows 计算器对同一表达式显示不同的结果

python - 使用Python xlsxwriter模块将srt数据写入excel

Java:具有并行数组的快速排序算法