2015-03-02 33 views
0

我使用Codeception在代碼庫上運行一些驗收測試。我有我的測試一個非常簡單的配置:Codeception - 不同環境中的不同結果

class_name: WebGuy 
modules: 
    enabled: [PhpBrowser, WebHelper, Db] 

當我這些本地爲毫安OSX上運行,所有的測試均正常。

我已經在運行CentOS的Rackspace上創建了一個臨時服務器。在運行相同的測試套件時,我遇到了幾個主要與運行$I->click('something')有關的錯誤。在失敗的情況下,被點擊的項目是一個通用的<a>標籤,並且沒有類或ID。因此,我一直指它的文字:

<a href='http://google.com'>google</a> 
$I->click('google'); 

這似乎在本地很好地工作,但是,現在失敗的分期。

我想知道哪些因素可能會造成這種差異? Staging運行與我相同的PHP版本。不過,我注意到CURL的版本略有不同。

回答

0

粉化這個問題直到用戶錯誤:在Codception中,當某個測試在特定斷言失敗時,記住與該步驟關聯的任何事件可能導致問題,而不僅僅是被測試的顯式方面。

在我的情況下,如果測試在插入查詢後未能斷言數據庫中存在某個行,則可能失敗,因爲存在文件上載組件,並且該目錄的權限不夠開放。