2011-03-01 49 views
1

我有一個簡短的問題,我環顧網站,無法找到與我想問的相關的另一個問題。我正在嘗試實施Selenium IDE並將其用於公司網站。我希望能夠記錄註冊並重新註冊註冊。我遇到的問題是測試回放時總是失敗。原因是因爲賬戶不能再次被重新創建。我有記錄註冊流程後可以通過測試嗎?Selenium IDE - 註冊測試(試圖獲得自動化部分的通行證)

回答

0

問題不在於您的Selenium測試,而在於網頁本身。如果您試圖再次註冊同一用戶,實際上預計會失敗 - 您甚至可能會記錄驗證該用戶的測試。

您必須選擇 - 清理數據庫,以便測試始終運行在相同的數據集上或使腳本更加智能智能。第一個選項要求您能夠完全訪問測試過的網站(通常情況下是這樣),但您可以放心地假定測試結果大部分時間都是可預測的。

在另一方面通過使測試更加智能我的意思是使用隨機用戶名(或生成唯一的名稱一些其他的方式) - 多編碼,我不知道是否有可能與普通IDE硒。

+0

如果我不得不去更多的代碼的路線和使用的東西一起硒IDE你有什麼建議? – Yaasir

+0

我不是Selenium的專家,但我相信本機Selenium IDE格式(HTML)不允許使用這樣的花式邏輯。但是,您可以立即將您的測試場景轉換爲各種編程語言,如Java,Ruby等。我使用Groovy並且它表現良好。擁有普通的編程語言,您可以隨機/計算唯一的用戶名並在輸入框中輸入。 AFAIK在Selenium IDE中只能使用靜態字符串或簡單變量。 –

+0

謝謝我想出了在註冊過程中如何通過測試。 – Yaasir

1

這對我的作品,以創建一個隨機的電子郵件ID-

<tr> 
    <td>storeEval</td> 
    <td>Math.round (Math.random() * 1357)</td> 
    <td>random</td> 
</tr> 
<tr> 
    <td>type</td> 
    <td>email</td> 
    <td>selenium${random}@domain.com</td> 
</tr> 

To create a random user 


    <tr> 
     <td>storeEval</td> 
     <td>Math.round (Math.random() * 1357)</td> 
     <td>random</td> 
    </tr> 
    <tr> 
     <td>type</td> 
     <td>user</td> 
     <td>selenium${random}</td> 
    </tr> 
0

您可以生成隨機的數據,同時爲電子郵件/名稱

Username/ID:- javascript{Math.floor(Math.random()*11)} 
     --- increased number of digit by increasing number of 1 
Email :- javascript{"abc+" + Math.floor(Math.random()*11111) + "@gmail.com";} 
0

Yaasir的腳本,

硒IDE很高興地執行JavaScript。這意味着,您不僅可以使用Math.random,還可以使用生成更多唯一標識符的東西。 我正在使用所有的方式時間戳。這很容易,結果非常獨特,除非您在測試機器上重置時間,否則您不可能獲得相同的編號(在這種情況下,獲得相同標識符的可能性會略大於零)。 下面是一行我用

<tr> 
    <td>store</td> 
    <td>javascript{new Date().getTime()}</td> 
    <td>timestamp</td> 
</tr> 

結果,你會得到類似這樣的號碼1375400227202

相關問題