java测试用例的编写

  做java开发不久,只是开发一些简单的需求,测试基本使用postman调用,然后交给测试人员。后来有几次部署就出错,然后se说要搞测试用例,于是就轰轰烈烈的搞起来了,然后自己也明白了测试用例代码在开发中的重要性。

  我们不能总是使用点点点来测试自己的程序,一个功能要可用,就要经过充分的测试。不能等上线完了,用户提出来,我们才发现bug,再去修补。比如你一个接口,首先要测试这个接口能不能调通,然后看一些特殊情况,也就是程序的边界问题,最简单的比如求倒数1/n,其他正常情况没有问题,但是当n=0时,就会报错,就需要在这一步发现并处理。

  写测试用例的本质上就是使用程序去调用我们的方法或者接口,判断和预期是否相同。

  如果纯手写测试用例,代码量还是挺多的,如果每个服务都要手写,就更多了。我们在做leetcode,newcoder等的时候,提交后就是机器执行测试用例的过程。可以猜想,它不可能针对每一题都写一个测试用例代码,而是复用。也就是准备一堆输入输出,然后使用模板方法去调用我们的代码,具体伪码可表示为:

复制代码
boolean test(ins,func,outs){
    for  i in (0, ints.length) {
    out = func(ins[i]);
    if !outs[i].equals(out){
      print("error:"out);
      return false; 
  }
  return true;  
}    
复制代码

  这就是大名鼎鼎的Junit框架的最基本原理。该例只是测试一个独立函数。

  如果这个函数还需要获取其他对象呢?那就得模拟函数的生存环境了。在springboot的框架中,就需要有spring对象容器,SpringbootTest就粉末登场了!其使用很简单,两个注解就完事了。  

@RunWith(SpringRunner.class)
@SpringBootTest(classes = SaasAbaBaseApp.class)
public class MybatisPulsTest {
  @Test   
public test(){     测试业务 } }

  这样我们简单地完成了我们的测试用例,提高了代码的可靠性。

  

 

posted @   懂得了才能做一些改变  阅读(1496)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
点击右上角即可分享
微信分享提示