/**
* 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. vue的初识与简单使用---前后端分离通过接口调取数据

    vue的安装 #### .环境搭建 ''' - 安装node ``` 官网下载安装包,傻瓜式安装:https://nodejs.org/zh-cn/ ``` - 安装cnpm ``` npm inst ...

  2. git的团队协作开发

    title: git的团队协作开发 date: 2018-04-24 14:00:03 tags: [git] --- 项目负责人创建组织架构 在控制面板中点击组织按钮,添加组织,在这里可以把组织理解 ...

  3. 深度学习原理与框架-RNN网络架构-RNN网络 1.RNN的前向传播 2.RNN的反向传播

    对于神经网络而言,每一个样本的输入与输入直接都是独立的,即预测的结果之间并没有联系 而对于RNN而言:不仅仅是有当前的输入,而且上一层的隐藏层也将进行输入,用于进行结果的预测.因此每一个输入都与之前的 ...

  4. 新装kafka与zookeeper配置

    zookeeper配置 dataDir=/opt/kafka_2.11-2.0.0/data/zookeeper # 尽量不要放在tmp# the port at which the clients ...

  5. idea将项目打成war包

    idea将项目打成war包(转载) 2018年02月28日 20:08:03 沈行的专栏 阅读数:13773更多 个人分类: Java   首先点击这里进入项目的配置页面 在Artifacts栏里点击 ...

  6. Shell条件表达式

    Shell编程中经常需要判断文件状态.字符串是否相等以及两个数值大小等情况,基于这些比较结果再做执行相关操作.本文主要讲述文件状态.字符串.数值大小的判断比较方法. 文件状态判断 文件状态的判断通常使 ...

  7. Python中fileinput模块使用方法

    fileinput模块提供处理一个或多个文本文件的功能,可以通过使用for循环来读取一个或多个文本文件的所有行.python2.7文档关于fileinput介绍:fileinput   fileinp ...

  8. 记Dagger2使用过程中的一个BUG--compileGoogleDebugJavaWithJavac

    项目编译可以通过,不过没有生成Dagger2的类,导致无法运行项目.. 错误提示 Error:(14, 41) 错误: 找不到符号 符号: 类 DaggerAppComponent 位置: 程序包 c ...

  9. 5.Java中的数组.md

    1.Java的数组定义 Java中的定义有两种形式: type[] arraryName; //推荐形式 type arrayName[]; //不推荐 前一种有更好的语义,可读性更好.但是需要注意的 ...

  10. canvas入门笔记

    1.Canvas的使用注意  A.要在页面中添加一对canvas标记,默认占300*150的区域  B.我们可以通过html属性‘width’,‘height’来设置canvas的宽高,不可以通过cs ...