第四次博客作业
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第四次博客作业相关的知识,希望对你有一定的参考价值。
1、某公司网站的后台管理有一个用户注册的功能需要测试,该测试为黑盒测试,请用表格的方式给出该功能的测试用例(参考课本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)
用例ID |
xxxx-xx-xx |
用例名称 |
用户注册 |
用例描述 |
管理员登录后台界面,注册用户名、密码、密码确认和邮箱都符合的情况下,注册成功 页面信息包含管理员登录后台管理页面,用户名、密码、密码确认和邮箱录入接口,输入数据后的注册成功页面,用户登录页面。 |
||
用例入口 |
管理员登录后台管理界面,进入后台登录界面进行用户注册。 |
测试用例ID |
场景 |
测试步骤 |
预期结果 |
备注 |
TC1 |
管理员登陆 |
进入登陆页面,进行登陆 |
显示管理员登陆成功 |
|
TC2 |
进入后台管理界面, 进行用户注册登陆。 |
选择用户注册模块进行用户注册,浏览器地址http://www.fengt.com/Admin/UserRegister.jsp |
成功进入注册模块 |
|
TC3 |
用户名验证 |
输入一个已存在的ID:test123 |
提示用户已存在,重新输入 |
|
TC4 |
用户名录入_验证 |
输入l12345 |
输入成功 |
|
TC5 |
用户名_容错性验证 |
输入:123456789 |
密码不符合要求,请重新输入 |
输入数据超过规定长度范围 |
|
用户名_容错性验证 |
输入:123 |
密码不符合要求,请重新输入 |
输入数据不足规定长度范围 |
TC6 |
密码验证 |
输入规范的用户名,输入不符合规 范的密码:123456 |
提示输入的密码不符合规范,请重新检查后输入。 |
|
TC7 |
密码确认--有效性校验 |
输入有效用户名,第一次输入规范密码: LZH33+,第二次输入无效密码:123456 |
提示输入的两次密码不一样,请重新输入 |
|
TC8 |
邮箱输入验证 |
输入不符合规范的邮箱格式:[email protected] |
提示输入邮箱格式有误,请重新输入 |
|
TC9 |
正确输入 |
输入用户名:l12345密码:LZH33+确认密码:LZH33+邮箱:[email protected],点击提交 |
提示输入正确,注册成功,并提示“注册成功,请记住密码” |
|
TC10 |
注册成功 |
页面跳转 |
2、利用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 {
@Test
public 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();
@Before
public 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);
}
@Test
public 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();
}
@After
public 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;
}
}
}
以上是关于第四次博客作业的主要内容,如果未能解决你的问题,请参考以下文章