必备技能~Java编程使用Junit实现接口单元测试,快速实现接口全覆盖(1)

这篇具有很好参考价值的文章主要介绍了必备技能~Java编程使用Junit实现接口单元测试,快速实现接口全覆盖(1)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

2.Post请求方法

==========

public static String getJsonData(String urls,int command,String json) {

StringBuffer sb=new StringBuffer();

try {

// 创建url资源

URL url = new URL(urls);

// 建立http连接

HttpURLConnection conn = (HttpURLConnection) url.openConnection();

// 设置允许输出

conn.setDoOutput(true);

// 设置允许输入

conn.setDoInput(true);

// 设置不用缓存

conn.setUseCaches(false);

// 设置传递方式

conn.setRequestMethod(“POST”);

// 设置维持长连接

conn.setRequestProperty(“Connection”, “Keep-Alive”);

// 设置文件类型:

conn.setRequestProperty(“Content-Type”,“application/json; charset=UTF-8”);

// 设置接收类型否则返回415错误

conn.setRequestProperty(“accept”,“application/json”);

// 设置文件字符集:

conn.setRequestProperty(“Charset”, “UTF-8”);

// 设置文件类型:

conn.setRequestProperty(“contentType”, “application/json”);

conn.setRequestProperty(“command”, command+“”);

// 开始连接请求

conn.connect();

OutputStream out = new DataOutputStream(conn.getOutputStream()) ;

// 写入请求的字符串

out.write(json.getBytes());

out.flush();

out.close();

//System.out.println(conn.getResponseCode());

// 请求返回的状态

if (HttpURLConnection.HTTP_OK == conn.getResponseCode()){

//System.out.println(“连接成功”);

// 请求返回的数据

InputStream in1 = conn.getInputStream();

try {

String readLine=new String();

BufferedReader responseReader=new BufferedReader(new InputStreamReader(in1,“UTF-8”));

while((readLine=responseReader.readLine())!=null){

sb.append(readLine).append(“\n”);

}

responseReader.close();

//System.out.println(sb.toString());

} catch (Exception e1) {

e1.printStackTrace();

}

} else {

System.out.println(“error++”);

}

} catch (Exception e) {

e.printStackTrace();

}

return sb.toString();

}

3.Junit实现

=========

//本地项目访问地址

String serverUrl=“http://localhost:8080/weixin/api.do”;

//单元测试接口列表

HashMap<Integer, String > myMap = new HashMap<Integer, String>(){{

put(MiniAppDefineConstant.GET_GOODS_LIST,“1获取商品列表”);

put(MiniAppDefineConstant.GET_GOODS_INFO,“3查询商品详情”);

put(MiniAppDefineConstant.GOODS_COLLECT_LIST,“62收藏列表”);

put(MiniAppDefineConstant.GOODS_COLLECT_ADD,“63收藏”);

put(MiniAppDefineConstant.GOODS_COLLECT_DEL,“64取消收藏”);

}};

/**

  • 单元测试主入口

*/

@Test

public void miniAppMain() {

miniApp(MiniAppDefineConstant.GET_GOODS_LIST);//1获取商品列表

miniApp(MiniAppDefineConstant.GET_GOODS_INFO);//3查询商品详情

miniApp(MiniAppDefineConstant.GOODS_COLLECT_ADD);//63收藏

miniApp(MiniAppDefineConstant.GOODS_COLLECT_LIST);//62收藏列表

miniApp(MiniAppDefineConstant.GOODS_COLLECT_DEL);//64取消收藏

}

//单元测试具体实现

public void miniApp(int command) {

String json=“”;

if(command==MiniAppDefineConstant.GET_GOODS_LIST){//获取商品列表

json=“{“goodsName”:“测试”,“openId”:“o-1234zXBPJ1234c1OrNpzql1234”,“page”:1,“count”:10}”;

}else if(command==MiniAppDefineConstant.GET_GOODS_INFO){//查询商品详情

json=“{“goodsId”:70,“openId”:“o-1234zXBPJ1234c1OrNpzql1234”}”;

}else if(command==MiniAppDefineConstant.GOODS_COLLECT_LIST){//收藏列表

json=“{“goodsId”:70,“openId”:“o-1234zXBPJ1234c1OrNpzql1234”,“page”:1,“count”:10}”;

}else if(command==MiniAppDefineConstant.GOODS_COLLECT_ADD){//收藏

json=“{“goodsId”:70,“openId”:“o-1234zXBPJ1234c1OrNpzql1234”}”;

}else if(command==MiniAppDefineConstant.GOODS_COLLECT_DEL){//取消收藏

json=“{“goodsId”:70,“openId”:“o-1234zXBPJ1234c1OrNpzql1234”}”;

}

System.out.println(command+“//”+myMap.get(command)+“------------”+json);

ResponsePacket responsePacket=JsonUtil.fromJson(getJsonData(serverUrl,command,json),ResponsePacket.class);

assertEquals(ResponsePacket.STATUS_CODE_SUCESS,responsePacket.getStatusCode());

}

4.单元测试运行结果

==========

都通过单元测试接口

20003//1获取商品列表------------{“goodsName”:“测试”,“openId”:“o-1234zXBPJ1234c1OrNpzql1234”,“page”:1,“count”:10}

20005//3查询商品详情------------{“goodsId”:70,“openId”:“o-1234zXBPJ1234c1OrNpzql1234”}

21002//63收藏------------{“goodsId”:70,“openId”:“o-1234zXBPJ1234c1OrNpzql1234”}

21001//62收藏列表------------{“goodsId”:70,“openId”:“o-1234zXBPJ1234c1OrNpzql1234”,“page”:1,“count”:10}

21003//64取消收藏------------{“goodsId”:70,“openId”:“o-1234zXBPJ1234c1OrNpzql1234”}

Process finished with exit code 0

部分接口没有通过测试结果截图

java http接口单元测试,2024年程序员学习,java,junit,单元测试

下载地址


Java编程使用Junit实现接口单元测试,快速实现接口全覆盖(建议收藏)-Java文档类资源-CSDN下载

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数软件测试工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年软件测试全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
java http接口单元测试,2024年程序员学习,java,junit,单元测试
java http接口单元测试,2024年程序员学习,java,junit,单元测试
java http接口单元测试,2024年程序员学习,java,junit,单元测试
java http接口单元测试,2024年程序员学习,java,junit,单元测试
java http接口单元测试,2024年程序员学习,java,junit,单元测试

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上软件测试开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注软件测试)
java http接口单元测试,2024年程序员学习,java,junit,单元测试

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!文章来源地址https://www.toymoban.com/news/detail-856214.html

涵盖了95%以上软件测试开发知识点,真正体系化!**

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注软件测试)
[外链图片转存中…(img-hyuiSqoB-1712768195165)]

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

到了这里,关于必备技能~Java编程使用Junit实现接口单元测试,快速实现接口全覆盖(1)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Java~在maven项目中添加junit依赖实现单元测试(@After

    在main目录下新建一个test目录, 并将它设置为Test Sources Root 实现 在pom.xml中导入依赖 下载单元测试的插件 3. 双击选择你要测试的类, 使用快捷键ctrl+shift+t 4. 点击create, 然后更改如下画面junit4, 选中你要测试的方法, 单元测试的生成类默认保存在test目录下 5. 进入生成的测试类就可

    2024年04月27日
    浏览(37)
  • 在 Java 中使用JUnit5进行单元测试和自动化测试

    单元测试和自动化测试是现代软件开发过程中必不可少的环节,可以提高代码质量和开发效率。JUnit5是Java中流行的单元测试框架,本文将介绍如何在Java中使用JUnit5进行单元测试和自动化测试。 2.1 单元测试的基本概念和原理 单元测试是一种测试方法,用于对软件系统中的最

    2024年02月03日
    浏览(45)
  • 测试人必备技能:如何进行WebSocket接口测试?

    目录 前言 WebSocket介绍 HTTP与WebSocket的区别 二者关系 WebSocket测试方法 使用Postman 使用Jmeter 使用Python 结语 随着Web应用的日益普及, WebSocket作为一种全双工通信协议,在移动端、游戏、视频会议等方面得到广泛应用。 而对于需要实时通信的Web应用来说,WebSocket接口测试是非常

    2024年02月09日
    浏览(41)
  • 如何在 Java 中使用JUnit5进行单元测试和自动化测试

    单元测试和自动化测试是现代软件开发过程中必不可少的环节,可以提高代码质量和开发效率。JUnit5是Java中流行的单元测试框架,本文将介绍如何在Java中使用JUnit5进行单元测试和自动化测试。 单元测试是一种测试方法,用于对软件系统中的最小可测试单元进行测试。这些单

    2024年02月05日
    浏览(57)
  • C#【必备技能篇】使用NPOI实现对excel的读取和写入

    依次执行下图中的1-6按钮 , 可以通过查看程序文件夹中的excel文件来加深理解。 链接:https://pan.baidu.com/s/19PgQMhCKviw9aBAjmJHSww 提取码:2omi 需要在源码中增加如下引用。相应的dll已更新到 5 的下载地址中。

    2023年04月13日
    浏览(41)
  • 后端学习2.1:引入Junit,对接口做单元测试

    本文将对在Springboot中如何使用Junit进行单元测试进行简单示例和介绍,项目的完整目录层次如下图所示: (在和main文件夹同级的文件中有一个test文件,在其中添加对应的测试类,一般以testXXXX或XXXXTest命名) 操作步骤: 在Springboot中可以通过TestRestTemplate对Controller进行测试; 目

    2024年02月06日
    浏览(43)
  • springboot项目使用Junit5 + mockito + jacoco 实现单元测试以及代码覆盖率检查

    在创建springboot项目时会默认添加spring-boot-starter-test依赖,其中已经包含了junit、mockito依赖,根据springboot版本的不同junit和mockito的版本也会有所不同 先说一下各自功能: junit只说一点,junt4和junit5的注解不同,使用方式略有差异,其他不赘述了,基本用法都懂。 mockito是mock的

    2023年04月23日
    浏览(58)
  • java 单元测试Junit

    所谓 单元测试 ,就是针对最小的功能单元,编写测试代码对其进行正确性测试。为了测试更加方便,有一些第三方的公司或者组织提供了很好用的测试框架,给开发者使用。这里介绍一种Junit测试框架。Junit是第三方公司开源出来的,用于对代码进行单元测试的工具(IDEA已经

    2024年02月07日
    浏览(65)
  • Java IDEA JUnit 单元测试

    JUnit是一个开源的 Java 单元测试框架,它使得组织和运行测试代码变得非常简单,利用JUnit可以轻松地编写和执行单元测试,并且可以清楚地看到哪些测试成功,哪些失败 JUnit 还提供了生成测试报告的功能,报告不仅包含测试的成功率,还能统计被测试代码的覆盖率。通过进

    2024年02月03日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包