• 实验四


    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

    场景

    测试步骤

    测试结果

    TC1

    管理员登录

    打开登录界面以管理员身份进入

    进入后台管理界面

    TC2

    初始界面显示

    从用例入口处进入

    页面元素完整

    TC3

    注册用户

    在后台管理界面进行用户注册,进行用户名,密码,密码确认,邮箱等操作

    进入用户注册页面

    TC4

    用户名输入—空值验证

    没输入用户名

    注册失败,提示:用户名不能为空

    TC5

    用户名输入—格式验证

    输入用户名123

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

    TC6

    用户名输入

    输入用户名abc123

    注册成功。

    TC7

    用户名输入—验证用户名重复

    输入用户名abc123

    注册失败,提示:用户已存在。

    TC8

    密码输入—空值验证

    没输入密码

    输入失败,提示:密码不能为空。

    TC9

    密码输入—格式验证

    输入密码123

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

    TC10

    密码输入

    输入密码12345。。

    输入成功

    TC11

    邮箱输入

    输入邮箱1213651253@qq.com

    输入成功,提示:注册成功,请您记住密码

    TC12

    跳转登录页面

    登录界面

    用户登录页面为http://www.fengt

    .com/Admin/Login.jsp

     

     

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

    【注意】

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

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

    (1)ECLIPSE开始到浏览器

    package com.whj.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");

    //打开火狐浏览器
    WebDriver driver = new FirefoxDriver();
    //如果做页面测试,建议用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.whj.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;
    }
    }
    }

  • 相关阅读:
    国内代码托管平台(Git和SVN)
    搭建网络svn实战
    2016你一定要试试这8款原型设计工具
    Linux下查看用户列表
    详解Oracle DELETE和TRUNCATE 的区别
    Oracle 用户表空间查看、修改大小、设置自增长等
    win7电脑定时开机设置方法
    weblogic负载分发
    怎样实现一个数据库关系系统?
    选择数据库管理系统(DBMS)时主要考虑的因素
  • 原文地址:https://www.cnblogs.com/wuhuijuan/p/5538230.html
Copyright © 2020-2023  润新知