![](/img/trans.png)
[英]Data on 2nd page showing data of 1st page in gridview with paging applied
[英]referring functions of 1st cs page in 2nd cs page
我們可以在一個cs頁面中定義一個函數,然后在另一個cs頁面中引用該函數,以便在第二cs頁面中設計的函數與第一cs頁面函數一起執行嗎?
像..在第一頁的cs
Iwebdriver driver;
driver=new firefoxdriver();
在第二個CS頁面中,基於上述功能,我包含了許多功能,因此,如何在第二個CS頁面中將此功能稱為函數,從而使代碼更簡單?
這是一個措辭很差的問題,但是我只能假設,您實質上想要實現的功能是能夠從另一個測試中的一個測試或從另一個類中的一個類調用函數。
這是基本的C#。
您的代碼應該以易於實現的方式拆分。 因此,這意味着您的測試與實際邏輯完全分開。
使用頁面對象是一種方法:
http://code.google.com/p/selenium/wiki/PageObjects
這意味着您將擁有一個類似以下的頁面:
public class LoginPage
{
public HomePage Login(string username, string password)
{
// do the login stuff
// return the home page
}
}
public class HomePage
{
// some logic related to what the user can see on the home page.
}
您可以在如下測試中調用它:
var loginPage = new LoginPage();
HomePage homePage = loginPage.Login(username, password);
由於現在已分開,因此您可以從任何地方調用LoginPage.Login()
。
這里的關鍵是不要將所有邏輯捆綁到測試本身中。 在這種情況下,請勿復制/粘貼登錄代碼以登錄到每個測試中的網站。 像上面一樣存儲它。 測試應該是您要執行的步驟,頁面對象應該定義如何執行這些步驟。 這樣,您就可以實現自己的目標。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.