1

次のコードでは、例外を処理したいと考えています。見つからない場合はレスキューでmsg[0]その例外メッセージをキャッチする必要があり、見つかった場合は成功メッセージを入れますmsg[2]msg[1]

puts "Verifying Home Page"
 def verifyHomepage(*args)
 begin
  args.each do |msg|    
    page.find(msg[0])
    puts msg[1]
    rescue
    puts msg[2]      
  end
end
end
verifyHomepage(['#logoAnchorr', 'logo anchor found', 'Logo anchor not Found'], ['.navbar-inner', 'Header Bar found', 'Header Bar  not Found'])

上記のコードでは、取得しています error sysntax error unexpected keyword rescue expecting keyword end

4

2 に答える 2

2

サリルはどこを修正すべきか指摘しました。その通りです。今、以下のアプローチも適応できます:

puts "Verifying Home Page"

def verifyHomepage(*args)
  args.each do |msg|   
    next puts(msg[1]) if page.find(msg[0]) rescue nil  
    puts msg[2]     
  end
end
a = [['#logoAnchorr', 'logo anchor found', 'Logo anchor not Found'], ['.navbar-inner', 'Header Bar found', 'Header Bar  not Found']]
verifyHomepage(*a)

出力:

Verifying Home Page
Logo anchor not Found
Header Bar  not Found
于 2013-05-16T06:37:26.637 に答える
1

beginの中に書く必要があります。block

puts "Verifying Home Page"
def verifyHomepage(*args)  
    args.each do |msg|
      begin
        page.find(msg[0])
        puts msg[1]
      rescue
        puts msg[2]
    end
  end
end
verifyHomepage(['#logoAnchorr', 'logo anchor found', 'Logo anchor not Found'], ['.navbar-inner', 'Header Bar found', 'Header Bar  not Found'])
于 2013-05-16T05:12:08.290 に答える