1

現時点で私はこれを持っています:

def burnChart()
   @browser.div(:id => "container").div(:id => "header").img(:class => "cogMenuHover").click
   @browser.div(:id => "container").div(:id => "header").div(:class => "sbTopMenu").li(:class => "taskMenuOp", :index =>1).click

  if 
    assert(@browser.send(type.to_sym, :class, "highcharts-grid").exists?)
    puts 'Chart has been found!'
  else
    puts 'No chart was generated'
  end
end

もともと私は to_css を使わなければならないと思っていましたか? しかし、他の人がそれを使用しているのを見たことから、それは間違っています.

クラスが存在するかどうかを確認し、true または fasle を返してエラーまたは確認をログに記録したいだけです。

4

1 に答える 1

2

私はあなたが望むと信じています:

def burnChart()
   @browser.div(:id => "container").div(:id => "header").img(:class => "cogMenuHover").click
   @browser.div(:id => "container").div(:id => "header").div(:class => "sbTopMenu").li(:class => "taskMenuOp", :index =>1).click

  #Due to using IE, it looks like .exists? has to be used.
  if @browser.element(:class, "highcharts-grid").exists?
    puts 'Chart has been found!'
  else
    puts 'No chart was generated'
  end
end

次の点に注意してください。

  • 要素のチェックは、if ステートメントの条件にする必要があります。
  • チェックを に変更しました.present?.exists?要素がページ上にある限り true を返しますが、通常は要素が表示されていることも確認する必要があります。
  • @browser.elementの代わりに に切り替え@browser.sendます。やっていたことはできますが、typeどこでも定義していなかったので、不要に思えました。
于 2012-09-14T14:48:44.580 に答える