第四次作业

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

测试用例

用例名称

系统登录

用例描述

管理员必须先登录,进入网站后台管理,进入后台管理界面后可以进行用户注册;用户注册必须进行:输入用户名、密码、密码确认、邮箱,这4项内容均不能为空,且格式符合要求的情况下;注册成功后提示注册成功,并跳转到用户登录页面进行登录;最后输入注册用户进行登陆。

用例入口

打开IE,在地址栏输入(http://www.fengt.com/Admin/UserRegister.jsp),进入到后台管理用户注册界面,进行用户注册;注册成功后,自动跳转到后台用户登录界面,进行登陆。

 

 

测试用例ID

场景

测试步骤

预测结果

TC1

初始页面显示

从用例入口处进入

进入管理后台的注册界面,页面元素完整,显示与详细设计一致

TC2

用户名输入——验证

输入未存在用户:test123

输入成功、没有跳出错误提示

TC3

用户名输入——容错性验证

和输入用户名:test1、testabc、1234567、123test、test123456789

跳出提示:用户名要求6-10个字符,由字母和数字构成,且只能以字母开头

TC4

密码输入——验证

输入密码:password123!

输入成功、没有跳出错误提示

TC5

密码输入——容错性验证

输入密码:pa1!、password、123456、+++!!!、password1、password!、12345!

跳出提示:密码至少6位,包含字母、数字和特殊符号(如: !  +  ~ 等)

TC6

密码确认输入——验证

输入密码:password123!

输入成功、没有跳出错误提示

TC7

密码确认输入——容错性验证

输入密码:pass123!

跳出提示:与之前输入密码不符,请重新输入

TC8

邮箱输入——验证

输入邮箱:test123@qq.com

输入成功、没有跳出错误提示

TC9

邮箱输入——容错性验证

输入邮箱:test123qq.com

跳出提示:你输入的邮箱必须符合邮箱规则

TC10

系统注册——成功

TC2,TC4,TC6,TC8,单机注册按钮

系统注册成功

TC11

系统注册——用户名、密码、密码确认、邮箱校验

没有输入用户名、密码、密码确认、邮箱

系统注册失败,提示:请输入用户名、密码、密码确认、邮箱

TC12

系统注册——用户名校验

没有输入用户名

系统注册失败,提示:请输入用户名

TC13

系统注册——密码校验

没有输入密码

系统注册失败,提示:请输入密码

TC14

系统注册——密码确认校验

没有输入密码确认

系统注册失败,提示:请输入密码确认

TC15

系统注册——邮箱校验

没有输入邮箱

系统注册失败,提示:请输入邮箱

TC16

系统注册——用户名输入有效性校验

输入已存在用户名,输入密码、密码、密码确认、邮箱

系统注册失败,提示:该用户名已存在

 

2、利用Selenium2为Lab05项目中的登录功能实现功能自动化测试。

【注意】

l         设计测试用例时需考虑登录成功和不成功两种情况;

l         Lab05项目为实验5用到的项目,在大家的班级QQ群中,数据库采用MySQL,数据库文件在项目根目录下CreateDataBase.txt

 

1、给登陆界面加上id

<html>
    <head><title>用户登录</title></head>
    <body>
        <form action="validate.jsp" method="post">
            <div align="center">
            用户登录<br>
           用户名:<input type="text" name="username"><br><br>

            密码:<input type="text" name="password"><br><br>

           <input type="submit" value="登录" id="su">
            </div>
        </form>
    </body>
</html>

 

 

2、在Mysql数据库中添加test表和测试用例
use test;

createtable user
(
id int auto_increment not null,
username varchar(10) not null,
password varchar(10) not null,
primary key(id)
);
insert into user values(1,'ccj','ccj');
insert into user values(2,'admin','admin');

3、测试代码

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 Test{

    public void Demo(){
        System.setProperty("webdriver.firefox.bin", "F:\\firefox\\firefox.exe");
        WebDriver demo = new FirefoxDriver();
        demo.get("http://localhost:8080/jsp_jdbc/login.jsp");
        WebDriverWait wait = new WebDriverWait(driver, 100);
        WebElement txtSearchBox = demo.findElement(By.name("un")).sendKeys("ccj");
        WebElement txtSearchBox = demo.findElement(By.name("pw")).sendKeys("ccj");
        WebElement btn = demo.findElement(By.id("su")).click();
        //demo.close();     
    }    
}

 

posted @ 2016-05-28 23:57  狱花  阅读(159)  评论(0编辑  收藏  举报