2012-06-01 31 views
0

我有多個ruby測試用例selenium-webdriver和所有文件共享相同的用戶名和密碼登錄到我的帳戶。有沒有辦法創建一個全局文件並將這個文件包含在這些測試用例中,而不是一遍又一遍地輸入它們,比如#include包括文件ruby testScript

這是一個需要其他測試用例之間共享代碼的一部分:

def setup 

    @driver = Selenium::WebDriver.for :firefox 
    @base_url = "http://localhost:3000/" 
    @driver.manage.timeouts.implicit_wait = 30 
    @verification_errors = [] 

    @facebook_ID = "[email protected]" 
    @facebook_password = "xxxxxxx" 
    @facebook_receiver_friend = "John Smith" 

end 

回答

1

有多種方式來做到這一點。 你可以使用

require 'setup' 

其中setup.rb是具有全部設置了變量/函數的共同文件。

你也可以使用YAML文件。更多信息here。你所有的配置屬性都可以定義。

此外,這是在文件的頂部$:.unshift '.'。這樣可以讓你的測試文件能夠「發現」你的setup.rb文件,它可以從主目錄路由。


注 - 即使您將文件保存爲setup.rb你需要,因爲只有setup

+0

對我的setup.rb,我應該如何保存這些變量?我應該把所有東西都放在模塊中嗎?或「def setup」........很抱歉im新 – Ali

+0

讓'def setup'開始,並從測試文件中正常調用函數。 – Amey

0

我有我的回答是:

eval File.open('setup.dat').read 

這將插入我在setup.dat爲文本,無論我需要它。