4fcf157f250a8471f245251564e94afa5173d239.svn-base 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188
  1. package org.jeecg.modules.system.test;
  2. import org.jeecg.JeecgSystemApplication;
  3. import org.jeecg.common.constant.CommonConstant;
  4. import org.jeecg.common.system.util.JwtUtil;
  5. import org.jeecg.common.util.RedisUtil;
  6. import org.jeecg.common.util.RestUtil;
  7. import org.junit.Test;
  8. import org.junit.runner.RunWith;
  9. import org.springframework.beans.factory.annotation.Autowired;
  10. import org.springframework.boot.test.context.SpringBootTest;
  11. import org.springframework.test.context.junit4.SpringRunner;
  12. import org.springframework.http.HttpHeaders;
  13. import org.springframework.http.HttpMethod;
  14. import org.springframework.http.MediaType;
  15. import com.alibaba.fastjson.JSONObject;
  16. import org.springframework.http.ResponseEntity;
  17. /**
  18. * 系统用户单元测试
  19. */
  20. @RunWith(SpringRunner.class)
  21. @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT,classes = JeecgSystemApplication.class)
  22. @SuppressWarnings({"FieldCanBeLocal", "SpringJavaAutowiredMembersInspection"})
  23. public class SysUserTest {
  24. @Autowired
  25. private RedisUtil redisUtil;
  26. /**
  27. * 测试地址:实际使用时替换成你自己的地址
  28. */
  29. private final String BASE_URL = "http://localhost:8080/jeecg-boot/sys/user/";
  30. // 请实际使用时替换成你自己的用户名和密码
  31. private final String USERNAME = "admin";
  32. private final String PASSWORD = "123456";
  33. /**
  34. * 测试用例:新增
  35. */
  36. @Test
  37. public void testAdd() {
  38. // 用户Token
  39. String token = this.getToken();
  40. // 请求地址
  41. String url = BASE_URL + "add" ;
  42. // 请求 Header (用于传递Token)
  43. HttpHeaders headers = this.getHeaders(token);
  44. // 请求方式是 POST 代表提交新增数据
  45. HttpMethod method = HttpMethod.POST;
  46. System.out.println("请求地址:" + url);
  47. System.out.println("请求方式:" + method);
  48. System.out.println("请求Token:" + token);
  49. JSONObject params = new JSONObject();
  50. params.put("username", "wangwuTest");
  51. params.put("password", "123456");
  52. params.put("confirmpassword","123456");
  53. params.put("realname", "单元测试");
  54. params.put("activitiSync", "1");
  55. params.put("userIdentity","1");
  56. params.put("workNo","0025");
  57. System.out.println("请求参数:" + params.toJSONString());
  58. // 利用 RestUtil 请求该url
  59. ResponseEntity<JSONObject> result = RestUtil.request(url, method, headers, null, params, JSONObject.class);
  60. if (result != null && result.getBody() != null) {
  61. System.out.println("返回结果:" + result.getBody().toJSONString());
  62. } else {
  63. System.out.println("查询失败");
  64. }
  65. }
  66. /**
  67. * 测试用例:修改
  68. */
  69. @Test
  70. public void testEdit() {
  71. // 数据Id
  72. String dataId = "1331795062924374018";
  73. // 用户Token
  74. String token = this.getToken();
  75. // 请求地址
  76. String url = BASE_URL + "edit";
  77. // 请求 Header (用于传递Token)
  78. HttpHeaders headers = this.getHeaders(token);
  79. // 请求方式是 PUT 代表提交修改数据
  80. HttpMethod method = HttpMethod.PUT;
  81. System.out.println("请求地址:" + url);
  82. System.out.println("请求方式:" + method);
  83. System.out.println("请求Token:" + token);
  84. JSONObject params = new JSONObject();
  85. params.put("username", "wangwuTest");
  86. params.put("realname", "单元测试1111");
  87. params.put("activitiSync", "1");
  88. params.put("userIdentity","1");
  89. params.put("workNo","0025");
  90. params.put("id",dataId);
  91. System.out.println("请求参数:" + params.toJSONString());
  92. // 利用 RestUtil 请求该url
  93. ResponseEntity<JSONObject> result = RestUtil.request(url, method, headers, null, params, JSONObject.class);
  94. if (result != null && result.getBody() != null) {
  95. System.out.println("返回结果:" + result.getBody().toJSONString());
  96. } else {
  97. System.out.println("查询失败");
  98. }
  99. }
  100. /**
  101. * 测试用例:删除
  102. */
  103. @Test
  104. public void testDelete() {
  105. // 数据Id
  106. String dataId = "1331795062924374018";
  107. // 用户Token
  108. String token = this.getToken();
  109. // 请求地址
  110. String url = BASE_URL + "delete" + "?id=" + dataId;
  111. // 请求 Header (用于传递Token)
  112. HttpHeaders headers = this.getHeaders(token);
  113. // 请求方式是 DELETE 代表删除数据
  114. HttpMethod method = HttpMethod.DELETE;
  115. System.out.println("请求地址:" + url);
  116. System.out.println("请求方式:" + method);
  117. System.out.println("请求Token:" + token);
  118. // 利用 RestUtil 请求该url
  119. ResponseEntity<JSONObject> result = RestUtil.request(url, method, headers, null, null, JSONObject.class);
  120. if (result != null && result.getBody() != null) {
  121. System.out.println("返回结果:" + result.getBody().toJSONString());
  122. } else {
  123. System.out.println("查询失败");
  124. }
  125. }
  126. /**
  127. * 测试用例:查询记录
  128. */
  129. @Test
  130. public void testQuery() {
  131. // 用户Token
  132. String token = this.getToken();
  133. // 请求地址
  134. String url = BASE_URL + "list";
  135. // 请求 Header (用于传递Token)
  136. HttpHeaders headers = this.getHeaders(token);
  137. // 请求方式是 GET 代表获取数据
  138. HttpMethod method = HttpMethod.GET;
  139. System.out.println("请求地址:" + url);
  140. System.out.println("请求方式:" + method);
  141. System.out.println("请求Token:" + token);
  142. // 利用 RestUtil 请求该url
  143. ResponseEntity<JSONObject> result = RestUtil.request(url, method, headers, null, null, JSONObject.class);
  144. if (result != null && result.getBody() != null) {
  145. System.out.println("返回结果:" + result.getBody().toJSONString());
  146. } else {
  147. System.out.println("查询失败");
  148. }
  149. }
  150. private String getToken() {
  151. String token = JwtUtil.sign(USERNAME, PASSWORD);
  152. redisUtil.set(CommonConstant.PREFIX_USER_TOKEN + token, token);
  153. redisUtil.expire(CommonConstant.PREFIX_USER_TOKEN + token, 60);
  154. return token;
  155. }
  156. private HttpHeaders getHeaders(String token) {
  157. HttpHeaders headers = new HttpHeaders();
  158. String mediaType = MediaType.APPLICATION_JSON_UTF8_VALUE;
  159. headers.setContentType(MediaType.parseMediaType(mediaType));
  160. headers.set("Accept", mediaType);
  161. headers.set("X-Access-Token", token);
  162. return headers;
  163. }
  164. }