2

基本上,我正在使用 Watir 为多个站点编写测试应用程序。但是,也有最终用户(可以假定他们是不熟悉命令行、使用 Windows 的典型用户)。现在,我想给他们一些看的东西,比如说,视觉上发生了什么(应客户的要求,叹息)。

我将制作一个 GUI,显示用于测试网站的表单数据(表单、用户名、名称等的随机信息)以及正在发生的事情。我想要一个预览窗口,例如 C#.NET 中的 WebBrowser 类。

是否有一种简洁的方法可以在 Ruby 中使用 Watir(或 Watir-WebDriver)在 GUI(wxRuby、Shoes 等)中限制/封装(idk 使用其他短语)浏览器实例?

(注意:这是在 Windows 机器上运行的)

4

2 回答 2

1

这是一项艰巨的任务。Watir 本身只是从命令行运行,因此您需要查看是否有一种方法可以使用您正在使用的操作系统中的命令行窗口来执行您想要的操作。但是随后 watir 调用了浏览器的一个实例(使用 Watir-webdriver 可以是大量不同的浏览器),每个都是他们自己的野兽,以自己的方式与操作系统和 UI 做出反应,我没有知道您可能会以您描述的方式“包装” IE、Chrome 或 Firefox。

从这个角度来看,是否有办法包装虚拟机的接口可能更容易?(也许有一些方法可以用 virtualbox 或 vmware 做到这一点?)

如果你问我,这似乎是一个非常古怪的要求,我很难看到你被要求做的事情的商业价值。

于 2012-11-15T01:42:59.613 回答
0

如果您使用的是 watir-classic,您可以使用以下命令隐藏 IE 窗口:

ie = Watir::Browser.new
ie.visible = false

如果您的要求是隐藏浏览器窗口并仅显示日志/状态消息的控制台窗口,这可能会有所帮助。

如果您使用的是 Watir WebDriver/Selenium,我不确定是否有类似的方法可用。在快速搜索中,我什么也没看到。

IWebBrowser2“可见”属性可能有用 - 如果它还不支持它,不确定将它修补到 Watir WebDriver 会有多难:

http://msdn.microsoft.com/en-us/library/aa752082(v=vs.85).aspx

于 2012-11-15T16:12:34.353 回答