Ruby 运行 irb watir 命令列表的脚本

Ruby Script that runs list of irb watir commands

我经常使用 irb 在浏览器上测试 Cucumber watir webdriver 步骤。这涉及打开 irb 并输入相同命令的列表。前几个命令总是

  1. 需要'watir-webdriver'
  2. 浏览器 = Watir::Browser.new(:chrome)
  3. b.goto 'www.foo.com'

命令列表是这样继续的。每次我打开 irb 时,我都必须检查所有这些。有没有人知道可以 运行 自动执行上述命令列表的脚本?这样它就可以打开 IRB,然后一条一条地执行命令,从而节省我的时间。

非常感谢任何帮助。

可能最简单的做法是在根项目目录(或任何启动 IRB 的地方)中创建一个 script.rb 文件,然后写出 Ruby 通常 运行.然后当你启动 IRB 时,只需 load 'script.rb'

但是,如果您需要在设置后访问 browser 变量,这将不起作用。在这种情况下,创建 class.

更有意义

./test_browser.rb

require 'watir-webdriver'
require 'irb'

class TestBrowser < Watir::Browser
  def self.build
    browser = new(:chrome)
    browser.goto 'www.foo.com'
    # other setup steps
    browser # return the browser at the end of the method
  end
end

IRB.start

然后来自shell:$ ruby ./test_browser.rb

这将在加载 class 的情况下启动 IRB。然后你需要做的就是调用.build方法并将浏览器存储在变量

browser = TestBrowser.build

您可以随时启动 irb 并牢记特定文件:

irb -r./startup.rb

其中 ./startup.rb 是在打开 REPL shell.

之前首先要 运行 的任何文件的路径

如果您经常这样做的话,很容易为此制作一个包装脚本。您还可以在自己构建的自定义脚本中手动调用 IRB,就像 rails console 所做的那样。