目次
第1章 軟件測試的基礎 11.1 概要 11.2 軟件生命周期的各個階段 21.3 軟件測試概述 51.4 軟件測試的目的 71.5 軟件測試的方法 81.5.1 等價類劃分法 81.5.2 邊界值分析法 91.5.3 錯誤猜測法 101.6 通過軟件測試找出缺陷 10第2章 Selenium自動化測試基礎知識 132.1 什么是自動化測試 132.2 自動化測試的流程 152.2.1 軟件測試工作的流程 162.2.2 自動化測試的流程 212.3 什么是Selenium 232.4 為什么選擇Selenium作為Web自動化測試工具 242.5 如何選擇合適的Selenium 25第3章 IDE安裝及介紹 273.1 Firefox 的安裝 273.2 IDE的安裝 313.3 IDE基礎知識 333.3.1 概述 333.3.2 菜單欄 353.3.3 Base URL 443.3.4 測試錄制回放工具條 453.3.5 測試用例面板 463.3.6 詳細信息欄 483.3.7 IDE錄制腳本、回放腳本 503.3.8 增加測試結果屬性驗證 533.3.9 IDE 命令插入 54第4章 Selenium腳本編寫環境的搭建 564.1 腳本開發環境的搭建——JUnit 564.1.1 環境安裝 564.1.2 驗證環境搭建成功 614.2 Firebug環境的搭建及使用 634.2.1 Firebug的安裝 634.2.2 Firebug的使用 674.3 XPath環境的搭建及使用 674.3.1 XPath的安裝 674.3.2 XPath的使用 70第5章 腳本元素定位實例學習 725.1 Element Locators(元素定位器) 725.2 StringMatching Patterns(字符串匹配模式) 785.3 Select Option Specifiers(Select選項指定器) 81第6章 Selenium中Actions命令實例學習 836.1 open(url)命令 846.1.1 IDE環境下使用實例 846.1.2 JUnit環境下使用實例 856.2 click(locator) 876.2.1 IDE環境下使用實例 876.2.2 JUnit環境下使用實例 886.3 clickAt(locator,coordString) 906.4 type(locator,value) 906.4.1 IDE環境下使用實例 906.4.2 JUnit環境下使用實例 916.5 select(selectLocator, optionLocator) 926.5.1 IDE環境下使用實例 926.5.2 JUnit環境下使用實例 936.6 goBack() 946.6.1 IDE環境下使用實例 946.6.2 JUnit環境下使用實例 956.7 assignId (locator,identifier) 966.7.1 IDE環境下使用實例 966.7.2 JUnit環境下使用實例 976.8 check(locator)/uncheck(locator) 986.8.1 IDE環境下使用實例 986.8.2 JUnit環境下使用實例 996.9 captureEntirePageScreenshot(filename,kwargs) 1006.9.1 IDE環境下使用實例 1006.9.2 JUnit環境下使用實例 1016.10 pause (waitTime) 1016.10.1 IDE環境下使用實例 1016.10.2 JUnit環境下使用實例 1026.11 typeKeys(locator, value) 1036.11.1 IDE環境下使用實例 1036.11.2 JUnit環境下使用實例 1046.12 selectFrame (locator) 1056.12.1 IDE環境下使用實例 1056.12.2 JUnit環境下使用實例 1076.13 runScript (script) 1086.13.1 IDE環境下使用實例 1086.13.2 JUnit環境下使用實例 1096.14 fireEvent(locator,eventName) 1106.14.1 IDE環境下使用實例 1106.14.2 JUnit環境下使用實例 1116.15 keyPress(locator,keySequence) 1126.15.1 IDE環境下使用實例 1126.15.2 JUnit環境下使用實例 1136.16 focus (locator) 1146.17 controlKeyDown()/controlKeyUp() 1146.17.1 IDE環境下使用實例 1146.17.2 JUnit環境下使用實例 1156.18 metaKeyDown()/metaKeyUp() 1166.19 shiftKeyDown()/shiftKeyUp() 1166.20 altKeyDown()/altKeyUp() 1166.21 windowMaximize() 1166.22 setSpeed(value) 1166.22.1 IDE環境下使用實例 1176.22.2 JUnit環境下使用實例 1186.23 setMouseSpeed (pixels) 1186.24 highlight(locator) 1196.24.1 IDE環境下使用實例 1196.24.2 JUnit環境下使用實例 1196.25 refresh() 1206.25.1 IDE環境下使用實例 1206.25.2 JUnit環境下使用實例 1216.26 close() 1226.26.1 IDE環境下使用實例 1226.26.2 JUnit環境下使用實例 1236.27 openWindow (url,windowID) 1236.28 selectWindow(windowID) 1236.29 windowFocus() 1246.29.1 IDE環境下使用實例 1246.29.2 JUnit環境下使用實例 1256.30 chooseCancelOnNextConfirmation() 1266.31 answerOnNextPrompt (answer) 1266.32 doubleClick(locator) 1266.32.1 IDE環境下使用實例 1276.32.2 JUnit環境下使用實例 1286.33 doubleClickAt(locator) 1286.34 contextMenu (locator) 1286.34.1 IDE環境下使用實例 1296.34.2 JUnit環境下使用實例 1306.35 setTimeout (timeout) 1306.36 waitForPageToLoad(timeout) 1306.36.1 IDE環境下使用實例 1316.36.2 JUnit環境下使用實例 1326.37 waitForFrameToLoad(frameAddress,timeout) 1326.38 waitForCondition(script,timeout) 1326.39 store(expression,variableName) 1336.40 Echo(message) 1336.40.1 IDE環境下使用實例 1346.40.2 JUnit環境下使用實例 1356.41 submit(formLocator) 1356.42 keyDown(locator,keySequence)/keyUP(locator, keySequence) 1356.43 mouseDown(locator)/ mouseUp(locator) 1366.44 mouseMove(locator)/ mouseOut(locator) 1366.45 mouseOver(locator) 1366.46 removeAllSelections(locator) 137第7章 Selenium中Accessors命令實例學習 1387.1 storeValue(locator,variableName) 1387.1.1 IDE環境下使用實例 1397.1.2 JUnit環境下使用實例 1407.2 storeText(locator,variableName) 1407.2.1 IDE環境下使用實例 1407.2.2 JUnit環境下使用實例 1417.3 StoreTitle(variableName) 1427.3.1 IDE環境下使用實例 1427.3.2 JUnit環境下使用實例 1437.4 storeLocation(variableName) 1447.4.1 IDE環境下使用實例 1447.4.2 JUnit環境下使用實例 1457.5 storeElementPresent(locator,variableName) 1467.5.1 IDE環境下使用實例 1467.5.2 JUnit環境下使用實例 1477.6 storeTextPresent(pattern,variableName) 1487.6.1 IDE環境下使用實例 1487.6.2 JUnit環境下使用實例 1497.7 storeAttribute(attributeLocator,variableName) 1497.7.1 IDE環境下使用實例 1507.7.2 JUnit環境下使用實例 1517.8 storeAllWindowIds(variableName) 1517.9 storeAllWindowNames(variableName) 1517.10 storeAllWindowTitles(variableName) 1527.10.1 IDE環境下使用實例 1527.10.2 JUnit環境下使用實例 1537.11 storeSelectOptions(selectLocator,variableName) 1547.11.1 IDE環境下使用實例 1547.11.2 JUnit環境下使用實例 1557.12 storeSomethingSelected(selectLocator,variableName) 1567.12.1 IDE環境下使用實例 1567.12.2 JUnit環境下使用實例 1577.13 storeSelectedId(selectLocator,variableName)/storeSelectedIds(selectLocator,variableName) 1587.14 storeSelectedIndex(selectLocator,variable Name)/storeSelectedIndexs(selectLocator,variableName) 1587.15 storeSelectedValue(selectLocator,variableName)/storeSelectedValues(selectLocator,variableName) 1597.16 storeSelectedLabel(selectLocator,variableName)/storeSelectedLabels(selectLocator,variableName) 1597.16.1 IDE環境下使用實例 1597.16.2 JUnit環境下使用實例 1607.17 storeChecked(locator,variableName) 1617.17.1 IDE環境下使用實例 1627.17.2 JUnit環境下使用實例 1637.18 storeTable(tableCellAddress,variableName) 1637.18.1 IDE環境下使用實例 1637.18.2 JUnit環境下使用實例 1647.19 storeAlert(variableName) 1657.19.1 IDE環境下使用實例 1667.19.2 JUnit環境下使用實例 1677.20 storeConfirmation(variableName) 1677.21 storePrompt(variableName) 1687.22 storeAllButtons(variableName) 1687.23 storeAllFields(variableName) 1697.24 storeAllLinks(variableName) 1697.25 storeBodyText(variableName) 1697.26 storeHtmlSource(variableName) 1707.26.1 IDE環境下使用實例 1707.26.2 JUnit環境下使用實例 1707.27 storeCookie(variableName) 1717.28 storeElementHeight(locator,variableName) 1717.29 storeElementPositionLeft(locator,variableName) 1727.30 storeMouseSpeed(variableName) 1727.31 storeXpathCount(xpath,variableName) 1737.32 storeEditable(locator,variableName) 1737.33 storeVisible(locator,variableName) 173第8章 Selenium中Assertions命令實例學習 1758.1 assertValue(locator, pattern) 1768.1.1 IDE環境下使用實例 1768.1.2 JUnit環境下使用實例 1778.2 assertText(locator, pattern) 1788.2.1 IDE環境下使用實例 1788.2.2 JUnit環境下使用實例 1788.3 assertTitle(pattern) 1798.3.1 IDE環境下使用實例 1798.3.2 JUnit環境下使用實例 1808.4 assertLocation(pattern) 1818.4.1 IDE環境下使用實例 1818.4.2 JUnit環境下使用實例 1818.5 assertElementPresent(pattern) 1828.5.1 IDE環境下使用實例 1828.5.2 JUnit環境下使用實例 1838.6 assertTextPresent(pattern) 1848.6.1 IDE環境下使用實例 1848.6.2 JUnit環境下使用實例 1858.7 assertAttribute(attributelocator, pattern) 1858.7.1 IDE環境下使用實例 1858.7.2 JUnit環境下使用實例 1868.8 assertSelectOptions(selectlocator,pattern) 1878.8.1 IDE環境下使用實例 1878.8.2 JUnit環境下使用實例 1888.9 assertSomethingSelected(selectlocator) 1898.9.1 IDE環境下使用實例 1898.9.2 JUnit環境下使用實例 1908.10 assertSelectedId(selectlocator,pattern)/assertSelectedIds(selectlocator, pattern) 1918.11 assertSelectedIndex(selectlocator,pattern)/assertSelectedIndexs(selectlocator,pattern) 1918.12 assertSelectedValue(selectlocator,pattern)/assertSelectedValues(selectlocator,pattern) 1918.13 assertSelectedLabel(selectlocator,pattern)/assertSelectedLabels(selectlocator,pattern) 1928.13.1 IDE環境下使用實例 1928.13.2 JUnit環境下使用實例 1938.14 assertChecked(locator) 1948.14.1 IDE環境下使用實例 1948.14.2 JUnit環境下使用實例 1948.15 assertTable(tableCellAddress, pattern) 1958.15.1 IDE環境下使用實例 1958.15.2 JUnit環境下使用實例 1968.16 assertAlert(pattern) 1978.16.1 IDE環境下使用實例 1978.16.2 JUnit環境下使用實例 1988.17 assertConfirmation(pattern) 1998.18 assertPrompt (pattern) 1998.19 assertAllWindowIds(pattern) 2008.20 assertAllWindowNames(pattern) 2008.21 assertAllWindowTitles(pattern) 2008.22 assertSelected(selectlocator,optionlocator) 2018.23 assertEditable(locator) 2018.24 assertVisible(locator) 2018.25 assertElementHeight(locator, pattern) 2028.26 assertElementPositionLeft(locator, pattern) 2028.27 assertMouseSpeed(pattern) 202第9章 Selenium項目實踐操作 2039.1 項目簡介 2039.2 注冊(Register)流程實例 2039.2.1 流程查看 2039.9.2 腳本內容 2049.3 登錄(Login)流程實例 2069.3.1 流程查看 2069.3.2 腳本內容 2079.4 查詢(Search)流程實例 2089.4.1 流程查看 2089.4.2 腳本內容 2089.5 購物(Buy)流程實例 2109.5.1 流程查看 2109.5.2 腳本內容 21