实验目的

(1)       了解Web应用测试的特点

(2)       掌握SSH分层单元测试

实验内容

以下题目均在bookstore项目上完成(请先运行数据库文件):

1、编写单元测试用例,对用户注册功能的Action层进行测试。(注意:测试用例应考虑成功和失败的情况)

成功:

/*

* 用户注册(成功)

*  作者:余兆康

* */

@Test

public void testRegisterSuccess() throws Exception {

BeanFactory factory = new ClassPathXmlApplicationContext("applicationContext.xml");

User user=new User();

user.setUsername("yzk");

user.setPassword("123");

user.setSex("男");

user.setAge(20);

UserAction userAction=new UserAction();

userAction.setUser(user);

userAction.setUserService((IUserService)factory.getBean( "userService" ));

String result=userAction.register();

System.out.println("注册结果:"+result);

}

失败:

/*

* 用户注册(失败)

*  作者:余兆康

* */

@Test

public void testRegisterFail() throws Exception {

BeanFactory factory = new ClassPathXmlApplicationContext("applicationContext.xml");

User user=new User();

user.setUsername("yzk");

//user.setPassword("123");

user.setSex("男");

user.setAge(20);

UserAction userAction=new UserAction();

userAction.setUser(user);

userAction.setUserService((IUserService)factory.getBean( "userService" ));

try {

String result=userAction.register();

if(result=="sucess"){

System.out.println("成功");

}

else{

System.out.println("注册失败!!");

}

} catch (Exception e) {

System.out.println("注册失败");

}

}

2、编写单元测试用例,对用户注册功能的DAO层进行测试。(注意:测试用例应考虑成功和失败的情况)

成功:

/**

* 测试用户注册(成功)

* 作者:余兆康

*/

@Test

public void testUserReg(){

User user= new User();

user.setUsername("yzk");

user.setSex("男");

user.setPassword("123");

userDAO.saveUser(user);

boolean b =userDAO.exitUser("yzk");

if(b){

System.out.println("YES");

}

else{

System.out.println("NO");

}

}

失败:

/**

* 测试用户注册(失败)

* 作者:余兆康

*/

@Test

public void testUserReg(){

User user= new User();

user.setUsername("yzk");

user.setSex("男");

//user.setPassword("123");

try {

userDAO.saveUser(user);

boolean b =userDAO.exitUser("yzk");

if(b){

System.out.println("YES");

}

else{

System.out.println("NO");

}

} catch (Exception e) {

System.out.println("插入失败");

}

实验七 Web应用测试的更多相关文章

  1. Kali Linux Web 渗透测试视频教程— 第七课 OpenVas

    Kali Linux Web 渗透测试视频教程— 第七课 OpenVas 文/玄魂 视频教程地址:http://edu.51cto.com/course/course_id-1887.html 目录 ...

  2. Jmeter Web 性能测试入门 (七):Performance 测试中踩过 Jmeter 的坑

    脚本运行的过程中,大量request抛error,但没有地方能够查看request是因为什么error的. 原因:Jmeter默认禁掉了运行过程中每个request的具体response信息收集,只保 ...

  3. 20155317王新玮《网络对抗技术》实验8 WEB基础实践

    20155317王新玮<网络对抗技术>实验8 WEB基础实践 一.实验准备 1.0 实验目标和内容 Web前端HTML.能正常安装.启停Apache.理解HTML,理解表单,理解GET与P ...

  4. 20145314郑凯杰《网络对抗技术》实验8 WEB基础实践

    20145314郑凯杰<网络对抗技术>实验8 WEB基础实践 一.实验准备 1.0 实验目标和内容 Web前端HTML.能正常安装.启停Apache.理解HTML,理解表单,理解GET与P ...

  5. 【C++ 流类库与输入输出 】实验七

    1. 基础练习 (1)教材习题 11-7 (2)教材习题 11-3 (3)教材习题 11-4 2. 应用练习 (1)已知有班级名单文件 list.txt(见实验 7 附件包).编写一个应用程序实现随机 ...

  6. 实验八 Web基础 SQL注入原理

    实验八 Web基础 实验要求 (1)Web前端HTML 能正常安装.启停Apache.理解HTML,理解表单,理解GET与POST方法,编写一个含有表单的HTML. (2)Web前端javascipt ...

  7. 实验吧web题:

    实验吧web题: 这个有点简单 因为刚了解sqlmap,所以就拿sqlmap来练练手了 1,先测试该页面是否存在sql注入漏洞 2.找到漏洞页面,复制url,然后打开sqlmap 先查看当前数据库 然 ...

  8. 2017-2018-2 20155225《网络对抗技术》实验八 Web基础

    2017-2018-2 20155225<网络对抗技术>实验八 Web基础 1.Web前端HTML 输入命令apachectl start打开apahce,并使用netstat -aptn ...

  9. 20155201 网络攻防技术 实验九 Web安全基础

    20155201 网络攻防技术 实验九 Web安全基础 一.实践内容 本实践的目标理解常用网络攻击技术的基本原理.Webgoat实践下相关实验. 二.报告内容: 1. 基础问题回答 1)SQL注入攻击 ...

随机推荐

  1. IO调度算法

    简介: 当向设备写入数据块或是从设备读出数据块时,请求都被安置在一个队列中等待完成. 每个块设备都有它自己的队列. I/O调度程序负责维护这些队列的顺序,以更有效地利用介质.I/O调度程序将无序的I/ ...

  2. PHP防SQL注入不要再用addslashes和mysql_real_escape_string

    PHP防SQL注入不要再用addslashes和mysql_real_escape_string了,有需要的朋友可以参考下. 博主热衷各种互联网技术,常啰嗦,时常伴有强迫症,常更新,觉得文章对你有帮助 ...

  3. python的类与对象

    类与对象 1.什么是类 类和函数一样是程序编程的一种方式,在处理某些问题的时候类比函数更加适合让编程变得简化,在python里面函数式编程和类编程都是为了简化代码的一种编程方式,具体应用那个则由具体问 ...

  4. Docker 不能被外网正常访问

    问题描述: 1. docker容器不能 被外部网络正常访问 2. docker所在服务器可以正常访问 3. docker启动时 报 ip_forward 错误 ARNING: IPv4 forward ...

  5. TDI - Transport Driver Interface

    [TDI - Transport Driver Interface] The Transport Driver Interface or TDI is the protocol understood ...

  6. select 选项的子句

    select 选项 : 关键字 all :全部(默认值)distinct:去掉重复的查询结果.语法:select all * from 表名: 别名: 关键字:as 语法:select * from ...

  7. C# 开源压缩组件比较

    SevenZipSharp check()为检查压缩包,有BUG,360创建的zip压缩包有无密码,密码错对都返回true DotNetZip 提供的函数比较人性化,缺点是只支持zip SharpCo ...

  8. css 下拉列表的制作

    圣诞节后上课就是不在状态,一整天都在神游,还感觉特别累,本来想休息休息的,结果某人看不惯我一直吃东西,非得把电脑给我打开,让整理今天所学的内容,想了一下,确实上午讲的用无序列表<ul>做的 ...

  9. Pow 算法

    #include <iostream> using namespace std; template<class T, class Int> T Pow(T x, Int n) ...

  10. 关于yii2框架活动记录activeRecord添加默认字段的问题

    平时使用sql的时候可以如下添加默认字段flag: "select a.*,0 as flag from user_info a", 对于yii2框架则需要这样: $query = ...