ActiveRecord是rails的框架,我們在selenium測試中肯定需要初始化數據或者清理數據庫數據以保證各個測試之間的獨立性,可以這樣用ActiveRecord來初始化或清理數據庫
????require?'test/unit'??
????require?'selenium'??
????require?'active_record'??
????ActiveRecord::Base.establish_connection(????
??????:adapter?=>?"mysql",????
??????:host?=>?"localhost",????
??????:username?=>?"dcrm",????
??????:password?=>?"dcrm",????
??????:database?=>?"dcrm2_test"????
???)????
?????
???class?FunctionalTestCase?<?Test::Unit::TestCase??
???????
?????@wait_default_time="30000"??
?????
?????def?setup??
???????initBrowser?unless?@selenium??
?????end??
????????
?????def?teardown??
???????logout??
???????clear_database??
???????closeBrowser??
?????end??????
???????
?????def?logout??
???????@selenium.open?"http://localhost:3000/logout"??????
???????wait_default??
?????end??
???????
?????def?closeBrowser()??
???????@selenium.stop??
?????end??
???????
?????def?initBrowser??
???????@selenium?=?Selenium::SeleniumDriver.new("localhost",?4444,?"*iexplore",?"http://localhost:4444",?10000);??
???????@selenium.start??
?????end??
???????
?????def?wait_default??
???????@selenium.wait_for_page_to_load?@wait_default_time??
?????end??
???????
?????def?test_logout??????
???????logout??????
???????assert?@selenium.is_text_present("用戶登錄")??
?????end??
???????
?????def?clear_database??
???????connection?=?ActiveRecord::Base.connection??
???????connection.execute("DELETE?from?channels")???
???????
??
?????end????
??????
???end???其中
require?'active_record'?
ActiveRecord::Base.establish_connection(??
??:adapter?=>?"mysql",????
??:host?=>?"localhost",????
??:username?=>?"dcrm",????
??:password?=>?"dcrm",????
??:database?=>?"dcrm2_development"????
)???
建立了DB Connection