前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >基于Java开发的testNG接口自动化测试

基于Java开发的testNG接口自动化测试

作者头像
全栈程序员站长
发布2022-11-01 10:31:30
8590
发布2022-11-01 10:31:30
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

1. TestNG简介

TestNG是一个开源的测试框架 与Junit的发行顺序:Junit3->TestNG->Junit4,TestNG的灵感来自于Junit3,在TestNG推出不久后,Junit借鉴了其中很多概念,也推出了差不多四年以来首个发行版本Junit4。 所以,TestNG跟JUnit4很像,但它并不是JUnit的扩展,它的创建目的是超越Junit。TestNG具有更强大的功能,引入了组测试的概念。TestNG不单纯用来做单元测试,它的作用在于为程序做集成测试。

2. 动手前准备

本文假定你对java和maven有一定的了解。在开始实践之前,需要你准备好以下环境:

代码语言:javascript
复制
JDK环境
IDE(Eclipse or other)
安装配置好maven

3. 实践

下面将完整地介绍,如何利用eclipse和maven来配置TestNG进行一个简单的Hello World测试。

3.1 Eclipse TestNG插件安装

eclipse工具栏目 : Help -> Install New Software 输入http://beust.com/eclipse在线安装,完成后重启eclipse引入项目即可。

※初次引入maven项目,会先下载jar包,所以编译时间会较长。

3.2 TestNG代码思路

一次请求的执行过程无异于以下几步:预置数据->发送请求->检查执行结果->恢复数据,这些操作需要的数据即测试用例相关数据,在Excel文件中定义,程序通过读取Excel文件内容,分别自动执行测试用例,实现了自动化测试。

代码实现 a、通过数据驱动,加载excel数据 注意:数据驱动和test注解定义的名字必须一样(如testcase) b、Excel有几列数据,则f里面定义几个参数接收 c、Excel每行数据代表一个请求,其中定义好预置数据、请求消息及预期数据等,代码每读一行Excel调用一次f方法

代码语言:javascript
复制
public class TestRun {
@Test(dataProvider = "testcase")
public void f(String id,String isExec,String testCase,String reqType,String reqHost,String reqInterface,String reqData,String expResult,String isDep,String depKey) {
	System.out.println(id );
}

@DataProvider(name = "testcase")
public Object[][] dp() {
	Object[][] data = null;
	try {
		ExcelUtil excelUtil = new ExcelUtil("D:\\autotest\\app_testcase.xlsx");
		data = excelUtil.getArrayCellValue(0);
	} catch (Exception e) {
	}
	return data;
}
3.3 执行过程与结果

工作中实际用到的接口测试类型(都是post请求) 1、查询类接口:直接检查请求后返回的消息体即可 2、设置类接口:不光要检查请求后返回的消息体,还要检查数据库中某些表的某些字段的值 3、作为客户端的接口:需要检查请求发出后,我们发出的请求是否正确,该类接口需要从日志中截取到响应的请求服务端的消息体后进行检证 4、拦截记录查询接口:这类接口比较特殊,需要从redis里面读取拦截记录,即查询的是redis非关系型数据库,而不是普通的业务关系型数据路,informix、MySQL等

根据以上要求,设计了Excel文件的各列信息,

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/203564.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年10月23日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. TestNG简介
  • 2. 动手前准备
  • 3. 实践
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档