代码之家  ›  专栏  ›  技术社区  ›  Jesse Jashinsky

自动化Web访问和watir

  •  1
  • Jesse Jashinsky  · 技术社区  · 14 年前

    我正在构建一个使用其他几个程序的Ruby程序,虽然大多数程序都是我可以下载并在这台计算机上运行的程序,但其中一个程序必须通过Web浏览器访问和运行。

    我实际上有两个问题:我发现了watir,它看起来是一个很好的网络自动化工具,但它是用于测试的。在主程序中使用watir来实现自动化,而不是用于测试,这还可以吗?还是有更好的东西可以用?

    我的另一个问题是我不能让沃特去工作。我下载了firewatir-1.6.5 gem并安装了用于firefox 3.6的JSSH,但是当我运行时

    b = Watir::Browser.start("the_web_page_address")
    

    它只是打开了一个新的firefox窗口到google,我得到了一个错误:

    Unable to connect to machine : foo.bar.baz.blah on port 9997. Make sure that JSSh is properly installed and Firefox is running with '-jssh' option (Watir::Exception::UnableToStartJSShException)
    

    我运行firefox时 -jssh 但这似乎没有帮助。

    2 回复  |  直到 14 年前
        1
  •  2
  •   Justin L.    14 年前

    watir非常适合自动浏览任务。我亲自用过几次。但是,您可能还希望了解其他解决方案,例如 Selenium .


    老实说,我对你的第二个问题没什么好说的; 我假设你已经将watir设置为通过设置打开firefox

    Watir::Browser.default = 'firefox'
    

    如果是这样,事情应该正常运行。安装JSH后重启了火狐吗?是否按照说明安装了Watir和JSSH? tutorial ?

    我可以建议使用Internet Explorer而不是火狐来运行watir,但这可能不适合您的应用程序。如果所有其他方法都失败了,请尝试我之前推荐的其他框架。

        2
  •  2
  •   Tim Koopmans    14 年前

    您可能还需要检查无头选项。有时,当一些简单的东西如机械化足够时,不需要安装Watir或Selenium这样的自动化框架。这真的取决于你试图自动化的东西的复杂性!

    http://mechanize.rubyforge.org/mechanize/EXAMPLES_rdoc.html