4.5实例:iHRM人力资源管理系统测试

4.5.1项目介绍

项目介绍部分主要说明了页面的状态,实际测试时也要略微关注一下。

在进行前需要注意后续id的获取方法已更改。

4.5.2项目接口文档

该文档由开发人员提供,实际内容可见软件测试第二版(黑马程序员)

4.5.3设计接口测试用例

设计的过程中要考虑到所有的情况,以下是我设计的各个部分测试用例

1.登录模块-登录接口

2.员工管理模块员工管理列表接口

3.员工管理模块—添加员工接口

4.员工管理模块—查询员工接口

5.员工管理模块—修改员工接口

6.员工管理模块—删除员工接口

4.5.4执行登录模块的接口测试用例

首先输入网址与请求头

在参数中输入名称与密码,{{}}中的内容为我编写的json文件引用的内容

如图我所编写的内容,由于多参,少参部分要特殊测,所以以下为9个测试数据

编写断言,前三个都是测试显示的是否符合预期,后面的内容则是为了后续下一部分的内容做铺垫

选择自己要测试的请求

测试的结果

这九项全部符合预期

对于参数变化的部分如下

结果如下

这与预测出现了很大的偏差,出现系统繁忙的只有多参,其余都是用户名或密码错误

可能出现的问题

json格式写的有问题,在导入时便会有提示

例如提示第七行,第一个字符

4.5.5执行员工管理模块的接口测试用例

1.员工管理列表接口

首先要添加请求头{{token}}中的内容为在登录模块时保存的内容

测试的结果

可以看出符合预期的结果

2.添加员工接口

以下是测试结果

在成功时并没有返回id,原因是已经更改成只会返回null

其他符合预期

当添加重复的手机号时也会显示99999

并且提示手机号已经存在

3.查询员工接口

查询部分有着最重要的东西便是员工的id,由于上一个步骤我们并没有获得id,所以需要我们在员工列表中手动查找如下

需要注意的是,ctrl+f就可以将左边搜索框展示出来。

获得id后便可以查询了,测试的结果都成功了

4.修改员工接口

测试如下

结果都符合预期

测试结束后需要通过上一步查询发现更改成功

5.删除员工接口

测试如下

测试符合预期

查看发现确实删除成功

4.5.6生成接口测试报告

首先导出集合与环境

随后执行终端命令

转化为自己导出内容所在地

执行发现出现错误,原因在于文件名称,将文件所带的New删除便可以成功运行,切记原本文件的名称需要更改

执行正确的命令

文件夹中出现了newman的文件夹打开里面的便是测试报告

其中的内容如下

https://pan.baidu.com/s/1rlumdezlSwOvFXgG8ypUJQ /** * 导入Excel,添加用户 * 文件上传:springboot */ @RequestMapping(value="/user/import",method = RequestMethod.POST) public Result importUser(@RequestParam(name="file") MultipartFile file) throws Exception { //1.解析Excel //1.1.根据Excel文件创建工作簿 Workbook wb = new XSSFWorkbook(file.getInputStream()); //1.2.获取Sheet Sheet sheet = wb.getSheetAt(0);//参数:索引 //1.3.获取Sheet中的每一行,和每一个单元格 //2.获取用户数据列表 List<User> list = new ArrayList<>(); System.out.println(sheet.getLastRowNum()); for (int rowNum = 1; rowNum<= sheet.getLastRowNum() ;rowNum ++) { Row row = sheet.getRow(rowNum);//根据索引获取每一个行 Object [] values = new Object[row.getLastCellNum()]; for(int cellNum=1;cellNum< row.getLastCellNum(); cellNum ++) { Cell cell = row.getCell(cellNum); Object value = getCellValue(cell); values[cellNum] = value; } User user = new User(values); list.add(user); } //3.批量保存用户 userService.saveAll(list,companyId,companyName); return new Result(ResultCode.SUCCESS); } public void saveAll(List<User> list ,String companyId,String companyName){ for (User user : list) { //默认密码 user.setPassword(new Md5Hash("123456",user.getMobile(),3).toString()); //id user.setId(idWorker.nextId()+""); //基本属性 user.setCompanyId(companyId); user.setCompanyName(companyName); user.setInServiceStatus(1); user.setEnableState(1); user.setLevel("user"); //填充部门的属性 Department department = departmentFeignClient.findByCode(user.getDepartmentId(), companyId); if(department != null) { user.setDepartmentId(department.getId()); user.setDepartmentName(department.getName()); } userDao.save(user); } } /** * 1.保存用户 */ public void save(User user) { //设置主键的值 String id = idWorker.nextId()+""; String password = new Md5Hash("123456",user.getMobile(),3).toString(); user.setLevel("user"); user.setPassword(password);//设置初始密码 user.setEnableState(1); user.setId(id); //调用dao保存部门 userDao.save(user); } public static Object getCellValue(Cell cell) { //1.获取到单元格的属性类型 CellType cellType = cell.getCellType(); //2.根据单元格数据类型获取数据 Object value = null; switch (cellType) { case STRING: value = cell.getStringCellValue(); break; case BOOLEAN: value = cell.getBooleanCellValue(); break; case NUMERIC: if(DateUtil.isCellDateFormatted(cell)) { //日期格式 value = cell.getDateCellValue(); }else{ //数字 value = cell.getNumericCellValue(); } break; case FORMULA: //公式 value = cell.getCellFormula(); break; default: break; } return value; }
### 黑马ihrm项目本地部署教程 #### 准备工作 为了顺利进行黑马ihrm项目的本地部署,需提前准备好必要的软件环境。确保已安装 JDK1.8、Maven 3.3.9 及以上版本以及 MySQL 5.7 数据库[^5]。 #### 下载源码 前往 GitHub 或其他托管平台下载 iHrm 的完整源代码仓库。通常情况下,官方文档会给出具体的克隆地址或压缩包链接供开发者获取最新的稳定版源码。 #### 导入IDEA并配置Lombok插件 使用 IntelliJ IDEA 打开下载好的项目文件夹,在 IDE 中按照提示导入 Maven 工程。由于该项目可能大量依赖 Lombok 提供的简化语法特性,因此需要确认已在 IDEA 中正确安装了 Lombok 插件,并重启 IDE 让其生效。 #### 修改数据库连接配置 进入 `application.yml` 文件所在路径下找到对应的数据源配置项,依据个人机器上的 MySQL 实例修改如下参数: ```yaml spring: datasource: url: jdbc:mysql://localhost:3306/ihrm?useUnicode=true&characterEncoding=utf-8&serverTimezone=UTC username: root password: your_password_here ``` 注意替换其中的用户名 (`username`) 和密码 (`password`) 字段为自己实际使用的凭证信息[^1]。 #### 初始化数据库结构与数据 根据项目需求创建名为 ihrm 的空白数据库实例后,运行 SQL 脚本初始化表结构及相关初始记录。这部分脚本一般位于项目的 resources/sql 目录内或是由维护者单独提供。 #### 编译打包应用 回到命令行界面切换至项目根目录位置,执行 mvn clean package 命令触发完整的构建流程。此过程将会自动拉取所需依赖并将应用程序打成可独立运行的 jar 包形式存放在 target 子文件夹里。 #### 启动服务端口监听 最后一步是在终端窗口输入 java -jar {your_jar_file_name}.jar 来启动 Spring Boot 应用程序的服务进程,默认情况下 web server 将绑定于 localhost 上的 8080 端口号等待客户端请求接入。
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值