第四次博客做業

一、某公司網站的後臺管理有一個用戶註冊的功能須要測試,該測試爲黑盒測試,請用表格的方式給出該功能的測試用例(參考課本P107頁)。用戶註冊功能描述以下:
(1)管理員必須先登陸,方可進入網站後臺管理,進入後臺管理界面後能夠進行用戶註冊(假設用戶註冊的URL地址爲http://www.fengt.com/Admin/UserRegister.jsp)
(2)用戶註冊要求輸入用戶名、密碼、密碼確認、郵箱,這4項內容均不能爲空
(3)用戶名要求6-10個字符,由字母和數字構成,且只能以字母開頭。用戶名是惟一的。
(4)密碼至少6位,包含字母、數字和特殊符號(如: ! + ~ 等)
(5)郵箱必須符合郵箱規則
(6)違法以上任何一個要求都應該有相應的提示
(7)註冊成功需提示「註冊成功,請您記住密碼」,並跳轉到用戶登陸頁面進行登陸(假設用戶登陸頁面爲http://www.fengt.com/Admin/Login.jsp)java

 

用例IDweb

xxxx-xx-xx數據庫

用例名稱瀏覽器

用戶註冊jsp

用例描述測試

管理員登陸後臺界面,註冊用戶名、密碼、密碼確認和郵箱都符合的狀況下,註冊成功   頁面信息包含管理員登陸後臺管理頁面,用戶名、密碼、密碼確認和郵箱錄入接口,輸入數據後的註冊成功頁面,用戶登陸頁面。網站

用例入口ui

管理員登陸後臺管理界面,進入後臺登陸界面進行用戶註冊。spa

  

 

測試用例IDfirefox

場景

測試步驟

預期結果

備註

TC1

管理員登錄

進入登錄頁面,進行登錄

顯示管理員登錄成功

 

TC2

進入後臺管理界面,

進行用戶註冊登錄。

選擇用戶註冊模塊進行用戶註冊,瀏覽器地址http://www.fengt.com/Admin/UserRegister.jsp

成功進入註冊模塊

 

TC3

用戶名驗證

輸入一個已存在的ID:test123

提示用戶已存在,從新輸入

 

TC4

用戶名錄入_驗證

輸入l12345

輸入成功

 

TC5

用戶名_容錯性驗證

輸入:123456789

密碼不符合要求,請從新輸入

輸入數據超過規定長度範圍

 

用戶名_容錯性驗證

輸入:123

密碼不符合要求,請從新輸入

輸入數據不足規定長度範圍

TC6

密碼驗證

輸入規範的用戶名,輸入不符合規

範的密碼:123456

提示輸入的密碼不符合規範,請從新檢查後輸入。

 

TC7

密碼確認--有效性校驗

輸入有效用戶名,第一次輸入規範密碼:

LZH33+,第二次輸入無效密碼:123456

提示輸入的兩次密碼不同,請從新輸入

 

TC8

郵箱輸入驗證

輸入不符合規範的郵箱格式:123456@.com

提示輸入郵箱格式有誤,請從新輸入

 

TC9

正確輸入

輸入用戶名:l12345密碼:LZH33+確認密碼:LZH33+郵箱:1234567@hotmail.com,點擊提交

提示輸入正確,註冊成功,並提示「註冊成功,請記住密碼」

 

TC10

註冊成功

頁面跳轉

跳轉進入登錄頁面http://www.fengt.com/Admin/Login.jsp

 

 

二、利用Selenium2爲Lab05項目中的登陸功能實現功能自動化測試。
【注意】
l 設計測試用例時需考慮登陸成功和不成功兩種狀況;
l Lab05項目爲實驗5用到的項目,在你們的班級QQ羣中,數據庫採用MySQL,數據庫文件在項目根目錄下CreateDataBase.txt

(1)從ECLIPSE開始到瀏覽器package com.lwk.test;import org.junit.Test;import org.openqa.selenium.By;import org.openqa.selenium.WebDriver;import org.openqa.selenium.WebElement;import org.openqa.selenium.firefox.FirefoxDriver;import org.openqa.selenium.support.ui.WebDriverWait;public class Test1 {@Testpublic void Test(){//若是瀏覽器沒有默認安裝在C盤,須要制定其路徑System.setProperty("webdriver.firefox.bin", "E:\\Program Files\\Mozilla Firefox\\firefox.exe");//System.setProperty("webdriver.ie.driver","C:\\Program Files\\Internet Explorer\\IEDriverServer.exe");//打開火狐瀏覽器WebDriver driver = new FirefoxDriver();//打開IE瀏覽器/*WebDriver driver = new InternetExplorerDriver();*///若是作頁面測試,建議用HttpUnitDriver,這種方式打開瀏覽器,而是在內存中運行,速度比較快//WebDriver driver = new HtmlUnitDriver();//打開要測試的頁面driver.get("http://www.baidu.com/");System.out.println("打開連接——>");//設置等待超出的時間(100秒)WebDriverWait wait = new WebDriverWait(driver, 100);//找到頁面元素,此處是搜索輸入框WebElement txtSearchBox = driver.findElement(By.name("wd"));//設置頁面元素的值,即往輸入框中輸入值txtSearchBox.sendKeys("selenium2");//找到搜索按鈕,並點擊它WebElement btn = driver.findElement(By.id("su"));btn.click();//關閉瀏覽器//driver.close();}}(2)先錄製,再轉成JAVA代碼package com.lwk.test;import java.util.regex.Pattern;import java.util.concurrent.TimeUnit;import org.junit.*;import static org.junit.Assert.*;import static org.hamcrest.CoreMatchers.*;import org.openqa.selenium.*;import org.openqa.selenium.firefox.FirefoxDriver;import org.openqa.selenium.support.ui.Select;public class Test2 {private WebDriver driver;private String baseUrl;private boolean acceptNextAlert = true;private StringBuffer verificationErrors = new StringBuffer();@Beforepublic void setUp() throws Exception {System.setProperty("webdriver.firefox.bin", "E:\\Program Files\\Mozilla Firefox\\firefox.exe");driver = new FirefoxDriver();baseUrl = "https://www.baidu.com/";driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);}@Testpublic void testUntitled() throws Exception {driver.get(baseUrl + "/");driver.findElement(By.id("kw")).click();driver.findElement(By.id("kw")).click();driver.findElement(By.id("kw")).click();driver.findElement(By.id("kw")).clear();driver.findElement(By.id("kw")).sendKeys("seleniumIDE");driver.findElement(By.id("su")).click();driver.findElement(By.id("kw")).click();}@Afterpublic void tearDown() throws Exception {driver.quit();String verificationErrorString = verificationErrors.toString();if (!"".equals(verificationErrorString)) {fail(verificationErrorString);}}private boolean isElementPresent(By by) {try {driver.findElement(by);return true;} catch (NoSuchElementException e) {return false;}}private boolean isAlertPresent() {try {driver.switchTo().alert();return true;} catch (NoAlertPresentException e) {return false;}}private String closeAlertAndGetItsText() {try {Alert alert = driver.switchTo().alert();String alertText = alert.getText();if (acceptNextAlert) {alert.accept();} else {alert.dismiss();}return alertText;} finally {acceptNextAlert = true;}}}

相關文章
相關標籤/搜索