/**
* Created by Administrator on 2017-04-06.
*/ @RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest
@WebAppConfiguration public class UserControllerTest {
private MockMvc mvc;
@Autowired
protected WebApplicationContext wac; @BeforeClass
public static void setBeforeClass(){
System.out.println("======BeforeClass");
}
@Before
public void setBefore(){
System.out.println("======Before");
mvc= MockMvcBuilders.webAppContextSetup(wac).build();
}
@Test
public void login() throws Exception {
String responseString = mvc.perform(
post("/api/questionbank/login")
.contentType(MediaType.APPLICATION_FORM_URLENCODED)
.param("LoginId","admin")
.param("Password","123456"))
.andExpect(status().isOk())
.andDo(MockMvcResultHandlers.print())
.andExpect(jsonPath("loginId").exists())
.andExpect(jsonPath("loginId").value("admin"))
.andReturn().getResponse().getContentAsString(); System.out.println("===返回的json= "+responseString);
} //登录失败:用户名和密码均不存在
@Test
public void loginusrpwdfail() throws Exception {
String responseString = mvc.perform(
post("/api/questionbank/login")
.contentType(MediaType.APPLICATION_FORM_URLENCODED)
.param("LoginId","abc")
.param("Password","12345678"))
.andExpect(status().isOk())
.andDo(MockMvcResultHandlers.print())
.andExpect(jsonPath("errcode").exists())
.andExpect(jsonPath("errcode").value("0"))
.andExpect(jsonPath("errmsg").exists())
.andExpect(jsonPath("errmsg").value("用户名或密码错误"))
.andReturn().getResponse().getContentAsString(); System.out.println("===返回的json= "+responseString);
}
//登录失败:用户名正确,密码不正确
@Test
public void loginpwdfail() throws Exception {
String responseString = mvc.perform(
post("/api/questionbank/login")
.contentType(MediaType.APPLICATION_FORM_URLENCODED)
.param("LoginId","admin")
.param("Password","12345678"))
.andExpect(status().isOk())
.andDo(MockMvcResultHandlers.print())
.andExpect(jsonPath("errcode").exists())
.andExpect(jsonPath("errcode").value("0"))
.andExpect(jsonPath("errmsg").exists())
.andExpect(jsonPath("errmsg").value("用户名或密码错误"))
.andReturn().getResponse().getContentAsString(); System.out.println("===返回的json= "+responseString); } //登录失败:用户名不正确,密码正确
@Test
public void loginusrfail() throws Exception {
String responseString = mvc.perform(
post("/api/questionbank/login")
.contentType(MediaType.APPLICATION_FORM_URLENCODED)
.param("LoginId","admin1")
.param("Password","123456"))
.andExpect(status().isOk())
.andDo(MockMvcResultHandlers.print())
.andExpect(jsonPath("errcode").exists())
.andExpect(jsonPath("errcode").value("0"))
.andExpect(jsonPath("errmsg").exists())
.andExpect(jsonPath("errmsg").value("用户名或密码错误"))
.andReturn().getResponse().getContentAsString(); System.out.println("===返回的json= "+responseString); }
@After
public void setAfter(){
System.out.println("======After");
} @AfterClass
public static void setAfterClass(){
System.out.println("======AfterClass");
} }

TDD - 登录成功和失败的更多相关文章

  1. Python模拟登录成功与失败处理方式(不涉及前端)

    任务说明: (1) 用户输入用户名,如不存在此用户不能登录: (2) 用户在输入密码时,如果连续输入三次错误,则该用户被锁定一段时间; (3) 用户被锁定一段时间后,可再次进行尝试登录: 程序使用库: ...

  2. Nodejs:npm run build之后,dist\index.html页面在火狐中可以正常显示登录页面并登录成功,在Chrome中可以正常显示登录页面,登录失败

    问题描述:Nodejs:npm run build之后,dist\index.html页面在火狐中可以正常显示登录页面并登录成功,在Chrome中可以正常显示登录页面,登录失败 解决方法:将打包后的d ...

  3. SpringSecurity系列之自定义登录验证成功与失败的结果处理

    一.需要自定义登录结果的场景 在我之前的文章中,做过登录验证流程的源码解析.其中比较重要的就是 当我们登录成功的时候,是由AuthenticationSuccessHandler进行登录结果处理,默认 ...

  4. 在主函数中提示用户输入用户名和密码。另写一方法来判断用户输入是否正确。该方法分别返回一个bool类型的登录结果和和一个string类型的登录信息。如登录成功,返回true及“登录成功”,若登录失败则返回false及“用户名错误”或“密码错误”(使用out参数)

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  5. 结合数据库登录注册模块,登录成功之后跳到WebView

    最近刚刚做了一个模块,在本地建立一个数据库,存储注册的账号,登录的时候取出,正确则登录,登录之后跳到一个webView网页. 直接上代码吧. LoginActivity.java package co ...

  6. 使用session和cookie实现用户登录:一个登录页面,一个servlet,一个登录成功页面

    文件目录 1.登录页面 <%@ page language="java" contentType="text/html; charset=utf-8" p ...

  7. shiro登录成功之后跳转原路径

    通过 WebUtils.getSavedRequest(request) 来获取shiro保存在session登录之前的url 1:java Controller代码 @PostMapping(&qu ...

  8. taotao用户登录(及登录成功后的回调url处理)

    后台Controller: package com.taotao.sso.controller; import org.springframework.stereotype.Controller; i ...

  9. 苹果手机Safari无痕浏览模式下系统登录成功但是页面不跳转

    昨天下午,测试提了一个bug,问题是:在苹果手机Safari无痕浏览模式下系统登录成功但是页面不跳转. 思前想后找了半天没思路,后来经过同事的点拨,说可能是禁用了cookie之类的,反正我也没思路就顺 ...

随机推荐

  1. Linux下源码编译安装PostgreSQL数据库

    我使用的Postgres的源码版本为 postgresql-9.3.5.系统为 CentOS6.5 ,是64位. 下载以后直接阅读其中的 README然后阅读其中的INSTALL,按照其中将的步骤做就 ...

  2. 关闭win10 自动更新 及蓝屏解决办法

    "控制面板-管理工具-服务"(或在"此电脑"鼠标右键,点击"管理"),找到Windows Update项目后,将"启动类型&quo ...

  3. 浅谈 foreach 的原理

    package com.shenzhou; import java.util.ArrayList; import java.util.Iterator; import java.util.List; ...

  4. PHP 字符串两边填充补零

    str_pad顾名思义这个函数是针对字符串来说的这个可以对指定的字符串填补任何其它的字符串 例如:str_pad(带填补的字符串,填补后的长度,填补字符串,填补位置) 其中填补后的长度必须是个正整数, ...

  5. 爬虫--urllib模块

    一.urllib库 概念:urllib是Python自带的一个用于爬虫的库,其主要作用就是可以通过代码模拟浏览器发送请求.其常被用到的子模块在Python3中的为urllib.request和urll ...

  6. WDA-1-环境配置

    1.Internet Communication Manager 确认ICM中提供的HTTP/HTTPS运行正常. Tcode: SMICM -> Display service. ICM在SA ...

  7. Linux:回收循环创建的多个线程

    上午我说了循环创建多个线程,由于进程与线程是如此的相似,进程我们知道要回收,那么线程也自然要回收啦.我们接着看控制原语: 线程与共享 线程间共享全局变量! [牢记]:线程默认共享数据段.代码段等地址空 ...

  8. php中的错误和异常

    总结: php错误不会抛出异常,因此不能被catch,但会根据配置写入日志文件或者输出到浏览器,所以可以通过日志文件查看错误 php异常都必须自己抛出,并通过catch捕捉.SQL语句执行的错误好像可 ...

  9. JSFL 禁止脚本运行时间太长的警告

    fl.showIdleMessage(false);

  10. 虚拟机安装VMware tools

    选择虚拟机菜单栏--安装VMware tools 2 然后在CentOS系统中弹出的VMware tools窗口中 右击VMwaretools-9.6.0-1294478.tar.gz 解压缩到 3 ...