Я все еще новичок в использовании Watir для автоматизированного тестирования, и я столкнулся с еще одной, возможно, безумно простой проблемой, с которой мне нужно обратиться к сообществу, чтобы получить небольшой толчок в правильном направлении.
Я пытаюсь использовать регистратор в Watir, который я могу заставить работать нормально, если я буду держать все в пределах методов. Если у меня нет определенного метода, например, при использовании цикла, я не могу заставить регистратор работать.
Вот пример кода, с которым я играю:
$LOAD_PATH << File.dirname(__FILE__)
require 'xls'
require 'watir'
xlFile = XLS.new(Dir.pwd + '/test_XLS_data.xls') #grab the data file in the same dirrectory
myData = xlFile.getRowRecords('Google Search Data','Example') #pull data records from excel
xlFile.close
myData.each do |record|
ie = Watir::IE.start('google.com')
ie.text_field(:name,'q').set(record['SearchString'])
ie.button(:value,/Search/i).click
if ie.contains_text(record['ContainsText'])
puts "Results of search: '#{record['SearchString']}' contains '#{record['ContainsText']}'"
else
puts "Error: could not find text: '#{record['ContainsText']}' in results of search: '#{record['SearchString']}'"
end
sleep 3
ie.close
end
Вот изменения, которые я сделал, которые в настоящее время терпят неудачу:
$LOAD_PATH << File.dirname(__FILE__)
require 'xls'
require 'watir'
require 'example_logger1.rb'
def setup
filePrefix = "xls_log"
#create a logger
$logger = LoggerFactory.start_xml_logger(filePrefix)
$ie.set_logger($logger)
end
xlFile = XLS.new(Dir.pwd + '/test_XLS_data.xls') #grab the data file in the same dirrectory
$logger.log("")
$logger.log("getting data from Excel")
myData = xlFile.getRowRecords('Google Search Data','Example') #pull data records from excel
xlFile.close
myData.each do |record|
ie = Watir::IE.start('google.com')
ie.text_field(:name,'q').set(record['SearchString'])
ie.button(:value,/Search/i).click
if ie.contains_text(record['ContainsText'])
puts "Results of search: '#{record['SearchString']}' contains '#{record['ContainsText']}'"
else
puts "Error: could not find text: '#{record['ContainsText']}' in results of search: '#{record['SearchString']}'"
end
sleep 3
ie.close
end
Спасибо!