亚洲好骚综合-亚洲黄色录像-亚洲黄色网址-亚洲黄色网址大全-99久久99久久-99久久99久久精品国产

您的位置:軟件測試 > 開源軟件測試 > 開源功能測試工具 > Selenium
Selenium自動化測試用例設計注意事項(二)
作者:網絡轉載 發布時間:[ 2013/1/28 10:52:45 ] 推薦標簽:

  主頁的頁面對象可能會是這個樣子:

/**
 * Page Object encapsulates the Home Page
 */
public class HomePage {
 
        private Selenium selenium;
 
        public HomePage(Selenium selenium) {
                if (!selenium.getTitle().equals("Home Page of logged in user")) {
                        throw new IllegalStateException("This is not Home Page of logged in user, current page" +
                                        "is: " +selenium.getLocation());
                }
        }
 
        public HomePage manageProfile() {
                // Page encapsulation to manage profile functionality
                return new HomePage(selenium);
        }
 
        /*More methods offering the services represented by Home Page
        of Logged User. These methods in turn might return more Page Objects
        for example click on Compose mail button could return ComposeMail class object*/
 
}

  現在,使用上述兩個頁面對象的登錄測試代碼,如下所示。

/***
 * Tests login feature
 */
public class TestLogin {
 
        public void testLogin() {
                SignInPage signInPage = new SignInPage(selenium);
                HomePage homePage = signInPage.loginValidUser("userName", "password");
                Assert.assertTrue(selenium.isElementPresent("compose button"),
                                "Login was unsuccessful");
        }
}

  怎么樣使用頁面對象進行設計有很大的靈活性,但也有一些基本的規則以保證得到測試代碼具有所需的可維護性。頁面對象本身不應該被驗證或斷言。這應該是測試的一部分,并應始終在測試代碼中去驗證或斷言,而不要放在頁面對象內。頁面對象將包含頁面展現,方法的形式表示頁面提供的服務,但不需要包含應該在測試代碼中維護的代碼。

  的應該存在頁面對象中的驗證方法是,驗證頁面、頁面上的重要元素,被正確的加載。這這個驗證應該在頁面初始化時進行。在上面的例子中,SignInPage 和 HomePage 的構造函數檢查了期望的頁面是否可用,是否準備好接受測試代碼的請求。

  頁面對象并不一定要代表整個頁面。頁面對象設計模式可用于表示頁面上組件。在待測應用上的一個頁面若有多個組件,每個組件對應一個頁面對象可以提高可維護性。

  在測試時,還會遇到其他的測試設計模式。有些人用一個頁面工廠模式來實例化頁面對象。討論所有的這些測試模式,超出了本文檔的的范圍。在這里,我們只為大家介紹概念,使讀者知道這些東西可以些什么。正如前面提到的,很多人都在博客上討論這個話題,我們鼓勵讀者搜索這些話題。

  數據驅動測試

  數據驅動測試是指相同的測試(或測試集)可以使用不同的數據多次執行。這些數據集往往來自外部文件,如csv文件,文本文件,或者是從數據庫加載。數據驅動測試是一種常用的自動化測試技術,使用不同的輸入對應用程序進行多次驗證。當測試被針對不同的數據進行設計時,所輸入的數據可以擴展,基本上不需要修改測試代碼可以進行更多的測試。

# Collection of String values
source = open("input_file.txt", "r")
values = source.readlines()
source.close()
# Execute For loop for each String in the values array
for search in values:
    sel.open("/")
    sel.type("q", search)
    sel.click("btnG")
    sel.waitForPageToLoad("30000")
    self.failUnless(sel.is_text_present("Results * for " + search))

上一頁1234下一頁
軟件測試工具 | 聯系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網站地圖
滬ICP備07036474 2003-2017 版權所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd
主站蜘蛛池模板: 日本一区二区高清免费不卡 | 久久精品视频16 | 国产成人精品一区二区三在线观看 | 91短视频在线观看免费最新91 | 成人免费毛片视频 | 五月天激情综合小说专区 | 日韩在线不卡一区在线观看 | 国产欧美日韩看片片在线人成 | 一男一女下面一进一出性视频 | 欧美高清欧美videosex | 欧美精品成人久久网站 | 涩涩成人网 | 免费一级毛片 | 亚洲aⅴ在线| 日韩精品在线一区 | 天天干天天草天天 | 中国黄色在线观看 | bban在线| 在线日本三级 | 伦理片在线观看网站资源 | 欧日韩一区二区三区 | 亚洲成a人v在线观看 | 一区二区三区四区视频在线观看 | 国产女人的一级毛片视频 | 最近中文日本字幕免费完整 | 五月婷香| 青青青视频自偷自拍视频1 青青青视频免费一区二区 青青青久热国产精品视频 青青青国产在线 | 天天操人人 | 亚洲图片国产日韩欧美 | 国产一二三区精品 | 日韩一区二区三区在线视频 | 在线欧美色图 | 成年人网站免费在线观看 | 深夜福利动态 | 国产不卡高清 | 国产高清在线精品一区免费97 | 国产福利在线小视频 | 欧美 在线 成 人怡红院 | 国产成人精品免费午夜 | 波多野结衣在线免费 | 五月婷视频 |