首页 > 解决方案 > 如何在硒测试中显示浏览页面中的元素?

问题描述

我试过这个做硒测试

 require 'watir'
 b = Watir::Browser.start 'http://www.gmail.com'
 t = b.text_field id: 'entry_1000000'
 t.exists?
 t.set 'your name'
 t.value

但未在浏览页面(www.gmail.com)中获取任何文本。

标签: rubyseleniumselenium-webdriverautomated-tests

解决方案


首先让我们检查您是否有运行该脚本所需的内容,如果没有则从那里开始。

  • 红宝石安装
  • Watir gem 已安装
  • 已安装浏览器(chrome 或 firefox)
  • Geckodriver 下载并在路径中(如果安装了 firefox)
  • 已下载 Chrome 驱动程序并在路径中(如果已安装 chrome)

之后,将下面的代码保存在文件中,我们将其命名为gmail.rb

require 'watir'
b = Watir::Browser.new :chrome #or :firefox    
b.goto "www.gmail.com"
b.text_field(:id => 'identifierId').set "your_email@gmail.com"
b.span(:text => "Next").click
b.text_field(:name => "password").set "your_password"
b.span(:text => "Next").click

打开命令提示符或终端并从gmail.rb所在的文件夹运行以下命令

ruby gmail.rb

浏览器应该打开,导航到 gmail,输入电子邮件,密码并提交,但 gmail 安全性从那里开始,所以这不是自动化的好用例,至少不是这种方式。

您可以尝试上面的代码,看看它是如何工作的,如果没有,请在此处发布错误。但是,如果您确实需要自动阅读 gmail,那么有一个非常好的 gem 可以帮助您做到这一点https://github.com/gmailgem/gmail


推荐阅读