红宝石黄瓜点击表

时间:2015-06-06 05:56:21

标签: html-table click cucumber href

我是红宝石和黄瓜的新手,试图自动化。 我需要在表格内单击href链接(Check1和Check2)。我试过了:

@browser.link(:href => "http://googlenet.com.au").click  
@browser.table(:href => "http://googlenet.com.au").click  

以及:

@browser.find(:linkText => "Check1").click()   \\{capybara}

我无法在运行时找到元素错误或未定义的方法 如何点击它?如果我不得不使用capybara,是否需要在env.rb或任何其他文件中进行任何配置,以便包括capybara gem?

我的HTML看起来像:

<html webdriver="true">
<head></head>
<body class="background_colour" onload="loadHeader()">
   <div id="content_wrapper">
      <h2></h2>
      <br></br>
      <table class="menuTable">
      <tbody>
      <tr>
      <td width="5%"></td>
      <td width="25%">
      <strong></strong>
      </td>
      <td width="70%"></td>
      </tr>
      </tbody>
      </table>
      <table class="menuTable">
      <tbody>
      <tr>
      <td width="10%"></td>
      <td width="25%">
      <h3>
      <!-- B:Registration Link[START] Mod… -->
      <span class="black_font"></span>
      <a href="https://google.com/channel1_" target="_blank">Check1</a>
      <!-- B.Registration Link[START] Mod… -->
      </h3>
      </td>
      <td width="65%"></td>
      </tr>
      <tr>
      <td width="10%"></td>
      <td width="25%">
      <h3>
      <span class="black_font"></span>
      <a href="http://googlenet.com.au" target="_blank">Check2</a>
      </h3>
      </td>
      <td width="65%"></td>
      </tr>
      </tbody>
      </table>
      <table class="menuTable">
      <tbody>

1 个答案:

答案 0 :(得分:1)

你可以使用

click_link('Check1')
click_link('Check2')

看看这个以及

https://www.launchacademy.com/codecabulary/learn-test-driven-development/rspec/capybara-cheat-sheet

修改

关于你的无方法错误,这是我使用的基本设置,不会给我任何问题

的Gemfile

source 'https://rubygems.org'
 gem 'cucumber'
 gem "capybara"
 gem 'rspec'
 gem 'selenium-webdriver'

capybara_drivers.rb

Capybara.register_driver :firefox do |app|
 profile = Selenium::WebDriver::Firefox::Profile.new
 profile.native_events = true
 Capybara::Selenium::Driver.new(app, :browser => :firefox)
end

env.rb

require 'capybara/cucumber'
require 'selenium-webdriver'