/**
* 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. Executors.newSingleThreadScheduledExecutor();线程池中放入多个线程问题

    转自:https://blog.csdn.net/u012062455/article/details/78247234/

  2. Django之集合函数使用与mysql表的创建特殊字段分析

    1. 集合函数的使用场景: -- 单独使用: 不分组, 只查聚合结果 -- 分组使用: 按字段分组, 可查询分组字段与聚合结果 2. 导入聚合函数 from django.db.models impo ...

  3. FormData上传文件(不是所有的浏览器都支持)

    <h1>Ajax上传文件</h1> <div> <input type="file" id="img"/> &l ...

  4. How to Pronounce the 50 States

    How to Pronounce the 50 States (1/4) Share Tweet Share Tagged With: Places The US state names can be ...

  5. mycat 单库分表

    上次把mycat的读写分离搞定了,这次试下单库分表,顾名思义就是在一个库里把一个表拆分为多个 需要配置的配置文件为 schema.xml 配置内容如下 <!DOCTYPE mycat:schem ...

  6. Linux通配符与基础正则表达式、扩展正则表达式

    在Linux命令行操作或者SHELL编程中总是容易混淆一些特殊字符的使用,比如元字符‘*’号,作为通配符匹配文件名时表示0个到无穷多个任意字符.而作为正则表达式匹配字符串时,表示重复0个到无穷多个的前 ...

  7. 组播协议——IGMP v2报文头介绍

    TYPE:占一个字节,其值有:0x16.0x12.0x17三种类型. Max Resp Time:最大响应时间,占一个字节. Checksum:校验和,占两个字节. Group address:组播地 ...

  8. MOSS 2007 错误0x80040E14解决

    今天公司内网莫名的出现错误,只能新建列表条目,不能创建网站,到后来列表条目也不能创建了,一直报0x80040E14错误.于是Google一把,搜索这个错误号,然后在apearce 的Blog找到了原因 ...

  9. 什么是 BULK INSERT

    MSDN的解释: 在 SQL Server 中以用户指定的格式将数据文件导入到数据库表或视图中. 语法: BULK INSERT [ database_name . [ schema_name ] . ...

  10. JAVA 课堂测试

    package ACC; /*信1705-2班 * 20173623 * 赵墨涵 */ public class Account { String accountID; String accountn ...