一些后端测试的东西

后端测试都测试些什么

  • 接口测试
  • 最小单元测试
  • 联调测试

接口测试


接口测试要素

可重复性

异常覆盖

环境一致

如何进行方便的接口测试

测试工具: idea-httpRequest , apifox , postman, jmeter

如何使用idea进行高效的接口测试

编写接口

启动项目直接点击接口启动

编写自己的httpi请求

直接所有的类型请求

可以参照Example进行编写

接口测试结果

java 复制代码
HTTP/1.1 200 
Content-Type: application/json
Transfer-Encoding: chunked
Date: Thu, 30 Nov 2023 06:16:00 GMT
Keep-Alive: timeout=60
Connection: keep-alive

{
  "id": 1,
  "name": "testName",
  "school": "Pkhu"
}
Response file saved.
> 2023-11-30T141600.200.json

这里会对请求的参数和结果进行记录,保证了测试的可重复性

读取环境配置


如何进行单元测试'

什么是单元测试

单元测试是针对软件中的最小可测试部分(通常是函数或方法)进行的测试。单元测试的目的是验证这些最小单元的行为是否符合预期,通常是通过编写测试用例来实现。单元测试通常是自动化的,可以在开发过程中频繁地运行,以确保代码的正确性和稳定性。

单元测试的好处包括:

可以快速发现和定位代码中的问题,有助于提高代码质量。

可以在修改代码后快速验证代码的正确性,有助于防止引入新的问题。

可以作为文档,帮助其他开发人员理解代码的预期行为。

单元测试通常是软件开发中的重要环节,也是保证软件质量的重要手段之一。

代码覆盖率测试

一些专业的术语:

代码覆盖率测试是一种衡量软件测试质量的指标,用于评估测试用例是否覆盖了源代码中的各个部分。代码覆盖率测试通常包括以下几种类型:

语句覆盖(Statement Coverage):衡量测试用例是否覆盖了源代码中的每一条语句。
分支覆盖(Branch Coverage) :衡量测试用例是否覆盖了源代码中的每个分支(例如 if 语句中的每个分支)。

条件覆盖(Condition Coverage):衡量测试用例是否覆盖了源代码中的每个条件表达式的各种可能取值。
路径覆盖(Path Coverage):衡量测试用例是否覆盖了源代码中的每个可能的执行路径。

如何进行代码覆盖率测试

代码包结构

1 编写测试代码

java 复制代码
@SpringBootTest(classes = DemoApplication.class)
@Slf4j
public class DemoTest {
    @Autowired
    private Service testService ;
    @Test
    public void getGetStundetById(){
        Student stu = testService.getStudentById("1") ;
        log.info(stu.toString());
        Assertions.assertNotNull(stu);
    }
}

2 点击覆盖率测试

3 可自由设置需要测试的包

覆盖测试结果

结果解读--测试代码没有走controller 故而覆盖率为0 ,

service代码为

可以对结果进行导出

相关推荐
realhuizhu14 小时前
周五下午5点改完的代码,你敢直接发布上线吗?
自动化测试·单元测试·ai编程·测试驱动开发·代码质量
我一定会有钱1 天前
pytest测试框架基础
python·单元测试·自动化·pytest
宋情写1 天前
单元测试、覆盖率测试-Springboot
spring boot·单元测试·测试覆盖率
卓码软件测评3 天前
第三方APP软件测试机构:【Gatling如何测试移动应用后端API移动网络特性和用户行为模拟】
网络·测试工具·单元测试·测试用例
晚烛3 天前
Flutter + OpenHarmony 质量保障体系:从单元测试到真机巡检的全链路可靠性工程
flutter·单元测试
旺仔Sec3 天前
2025年安徽省职业院校技能大赛(高职组)软件测试赛项规程及竞赛样题(附评分标准)
功能测试·单元测试·压力测试
UTP协同自动化测试5 天前
UTP测试系统为家电及智能家居产品打造高效、合规、体验至上的验证体系
功能测试·物联网·测试工具·视觉检测·压力测试·模块测试·测试覆盖率
記億揺晃着的那天5 天前
MyBatis-Plus 单元测试中 Lambda Mock 的坑与解决
单元测试·log4j·mybatis
CeshirenTester5 天前
Playwright元素定位详解:8种定位策略实战指南
人工智能·功能测试·程序人生·单元测试·自动化
行走的陀螺仪6 天前
Vue3 项目单元测试全指南:价值、Vitest 落地与提效方案
开发语言·前端·单元测试·html5·vitest