私は Ruby を初めて使用し、現在、動作テスト ケースを .NET で記述した Java プロジェクトに取り組んでいますruby(CUCUMBER BDD)
。プロジェクトをビルドしようとすると、TeamCity
6 つのテスト ケースの失敗が表示されます。
"Watir::Exception::NoMatchingWindowFoundException: Unable to locate window,"
また
"Spec::Expectations::ExpectationNotMetError:"
エラー。これらのテスト ケースに変更は加えられていません。
これは私のenv.rbファイルです..ここで何かを変更する必要があります.
require 'watir'
require 'open-uri'
require 'spec'
require 'win32ole'
require 'rake'
require 'cucumber/rake/task'
require 'net/http'
require 'uri'
require 'mysql'
require 'active_record'
require 'features/db/mysqldb'
require 'features/db/order'
require 'features/db/listener_state'
def clear_all_mock_requests
open 'http://xxxxxx:8080/httpmockserver/soapResponse!clearAllRequests.action'
end
Mysqldb.connect("xxx", "xxx", "xx", "xxx", "xxxxx")
clear_all_mock_requests()
Watir::Browser.default = ENV['browser'] == 'firefox' ? 'firefox' : 'ie'
#Watir::Browser.default = 'firefox'
BROWSER = Watir::Browser.new
WIN32OLE.class_eval do ||
def visible?;
return false if self.style.invoke('display').downcase == 'none';
return true;
end
def type
{:text_field=>'text', :radio=>'radio', :select_list => 'select-one', :checkbox => 'checkbox'}.each do |method, name|
return name if BROWSER.method(method).call(:name, self.name).exist?
end
return nil
end
def exist?
return true
end
end
NilClass.class_eval do ||
def exist?
return false
end
end
at_exit do
BROWSER.close
end