2016-11-21 170 views
0

我在使用selenium webdriver工作時使用Automation。我堅持的情況是,我如何將一個值從我的TestCase1轉移到TestCase2。以下是我的情況。如何將一個測試用例的值傳遞給另一個測試用例selenium webdriver

TestCase1是關於爲新用戶創建一個帳戶。創建帳戶時,會爲該用戶創建一個唯一帳戶ID,以便他可以使用該帳戶登錄其帳戶。我可以在日誌(unix)和用戶在他的電子郵件中收到的確認電子郵件中看到唯一的帳戶ID。

TestCase2是關於客戶登錄他的賬戶,並做出他需要做的任何改變,例如,更改密碼,聯繫信息等

所以問題是,我怎麼能將帳戶創建時(TestCase1)生成的id的值傳遞給我的第二個測試用例並以用戶身份登錄。

最早的答覆將不勝感激!謝謝!!

回答

0

如果被依次運行這兩個測試用例,你有一種方法來獲取該帳戶ID那麼你可以有一個靜態變量,其可以在測試用例1具有該ID初始化。而且,在運行Testcase 2時,請使用它,因爲它符合您的要求。

+0

問題是帳戶是在預付費基礎上創建的,這意味着例如:在我的第一個測試用例中,在我創建帳戶之後,只有那些值(例如訂單號,帳號,付款ID)在創建帳戶之前,數據庫中沒有任何數據庫可以查看它 例如: ,用戶名等存儲在數據庫中 所以,即使我必須從數據庫中獲取數據並在第二個測試用例中使用它,我沒有任何值可以保留從第一個訂單輸入查詢,因爲在處理訂單後所有內容都會被創建。 –

1



通常認爲隔離測試用例是一種很好的做法,因爲如果第一次測試因任何原因(實際錯誤或隨機崩潰)失敗,您不希望第二次測試(登錄測試)卡住。

第一個替代方案:在您的第二個測試中,創建一個設置階段,您可以在其中發送數據庫查詢(例如,如果您使用Java和JDBC)來創建新用戶。很簡短,但我懷疑這個id會通過郵件發送給你的用戶。值得嘗試。

第二替代方案:在您的第二次測試中從GUI創建一個新用戶。相當長的時間,如果您在註冊表單中存在實際錯誤,但會看起來像真正的用戶操作,並且您將能夠通過檢查用戶的郵件來檢索該ID。

如果你真的想要在測試之間共享數據(你可能有一個很好的理由......)你可以將測試數據動態地存儲在一個單獨的文件中,以便測試在需要時可以訪問。

+0

感謝您的評論。實際上,我使用的電子郵件確實收到一封電子郵件,並且確實有創建的ID。所以,我可以用它來獲取ID ..如果我可以...任何想法我怎麼能做到這一點。 –

+0

爲什麼不自動電子郵件登錄? –

+0

這將是完美的場景,但不幸的是,我只能使用用戶名登錄而不是電子郵件地址。 :( –

相關問題