热辣点击
赞助展示
最新图片

接口自动化测试一体式解决方案(集成:Java+Testng+Maven+Jenk

[点击图片进下一张 ] 跳转到

  其实我这人不爱去写博客之类的东西,更多的是靠脑子的总结。不是脑子好用,其实就一句话:懒!就是懒!!!

  于是觉得是该写点东西记录下,倒不是说要总结什么的;只是想让自己经历过的事情,通过记录的形式加强印象;与此同时,希望能够给像自己这样的小白,在遇到类似问题时能够带来想法。

  注意:服务端测试 != 接口测试 != 接口自动化测试 。这个公式是不等!找机会再写篇文章详细聊聊...

  在经历过多中不同的平台后,毅然而然的觉得通过码代码的用例是最靠谱的。别相信那些带UI降低编写接口自动化用例难度的自动化平台,原因不详!(不想详细解释,入坑后自会明白...)

  好了,今天介绍一款接口自动化测试的一体式解决方案。(有点夸张,其实吧还真是一体式。)这是入坑后,个人认为在Java大背景服务开发下比较理想的解决方案。

  最后,接口自动化测试的框架和平台形形色色,不用评论哪个好,哪个差。只有最合适项目团队的才是最好的。(废话...)

  话不多说,先上Jenkins上自助运行用例,查看报告流程截图。也可结合持续集成自动触发测试服务。

  ①. 选型:Java + Maven + Testng + ExtentReports + Git + Retrofit2 + Jenkins

  使用ExtentReports作为代替TestNG报告的报告驱动,二次美化功能,界面更美观,内容清晰

  使用Jenkins作为自动化持续集成平台,方便自动编译,自动打包,自动运行测试脚本,邮件发送测试报告,通知等。

  通过Retrofit2作为等常用接口定义与请求方法,使用方便简洁。同时可分离接口定义、实现请求、响应验证。

  2.2.2 在pom.xml文件配置properties为了maven打包编译时后台一直输出警告信息。导致构建失败。

  src/resources/testNg 目录是存放测试集合的目录,可根据测试模块创建对应模块文件夹。

  原因是:test里的name是针对一整个testclass的名称,为了让每一个测试名称都能够展示。

  ①、为了能够在报告中展示更多状态类型的测试结果,例如:成功、失败、警告、跳过等测试状态结果。

  用了很粗暴的方式,新建了一个类名为MyReporter,一个静态ExtentTest的引用。

  同时,我考虑到了日常控制台和测试报告上都需要看到对应请求信息,故此在HttpClient中默认加入了日志;日志的实现方法里,用Reportes.log记录到日志中。

  并且,考虑到实际项目中每个Http请求都会有对应类似RequestHeader、RequestBody的加密签名等,预留了。

  测试用例构建结果的通知。网上很多说用邮件,说实话使用场景最频繁高效的应该是IM靠谱。这个插件就是解决测试结果的通知。

  我在执行上面的命令时,maven一直提示警告信息-编码问题;该警告信息原先我本不太在意,因为配置没有问题。

  不得不说,maven的提示还是要重头到尾认真看。因为真正报错误的地方不一定是[error]提示。

   这个配置可根据实际项目需求配置。个人建议: 接口自动化测试中的自动化最核心的是结合持续构建。 所以建议配置“其他工程构建后触发”,填入所需测试的服务端项目名称即可。当然要在一个Jenkins中。

   上面已经配置了“调用顶层Maven目标”,然后还需要配置Groovy script。 配置Groovy script的目的是让Http Reported插件css能用,同时不用担心jenkins重启。

  原因有1.简化接口调用代码,直接通过静态方法调用。 2. 当遇到接口需要特殊处理时,可通过该类进行扩展。

  #### 写在最后 其实,接口自动化测试平台的搞起来不难。 推动平台接入到持续集成,将测试变成一种服务,更快更及时的服务于项目,才是重点。 正所谓:wiki一定,开发未动,接口已行。 而,服务端测试才挑战。知识储备的深度决定了,测试的深度。 个人GitHub: 欢迎Watch + Fork end...

  前言 前段时间的工作中有接触到接口测试,测试代码以maven工程的形式编写,使用testNG测试框架。工作中,每次执行测试都是在IDE里手动执行测试代码,很是麻烦,再考虑到后期的回归测试需要,所以产生了把该接口测试自动化的想法。最初的做法是将测试数据保存在excel中,测试...

  Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智能路由,微代理,控制总线)。分布式系统的协调导致了样板模式, 使用Spring Cloud开发人员可以快速地支持实现这些模式的服务和应用程序。他们将在任何分布式...

  一、序言 随着项目版本的快速迭代、APP测试有以下几个特点: 1. 首先,功能点多且细,测试工作量大,容易遗漏; 2. 其次,代码模块常改动,回归测试很频繁,测试重复低效; 3. 最后,数据环境多样,用户场景复杂,功能回归覆盖难全面。 为节省成本,保证高效及高质...

  一、问题描述: 现有Jekins+Maven+Spring项目并没有做系统的单元测试,仅有少量勤快的开发者会为业务模块添加单元测试。为实现项目系统的单元测试过程,本文将TestNG测试框架与现有项目进行整合,从而支持单元测试以及项目在构建前进行项目范围内的单元测试,从而保障...

  鼎典吴老师 暑期结课前后 工作要点: 1、各班全勤奖、心愿奖等等礼物落实 已完美结束 2、各班集体照 已完成 3、各自代班老师安排学员结课互动环节(目的:增进学员对老师的粘性和对秋季课程的期待) 已完成 4、暑期代课总结(需包含以下几点但不限于此进行总结) 春季总代班...

  最近最火的估计是iPhone 8了,虽然各位都说iPhone 8的变化不大,没有什么值得购买的地方。但是许多人却是在开卖之时抢着下单买了那“高端黑”色。好吧,8000块就那么花出去了。然而又有人会说,反正我都买不起车,买不起房,那我就每年买个iPhone给自己作为奖励囖。 ...

  时隔这么久,这个系列又和大家见面了,感谢支持我的朋友,只要能给大家带来一点点收获,我真的时发自内心的开心! 今天先简单了解一下虚拟机的垃圾收集器。 前面已经介绍过了,程序计数器,虚拟机栈和本地方法栈是属于线程私有区域,这三个区域分配和回收都是确定的,方法和线程结束后,内存自...

  我很久之前就有关注你 在茫茫人海中 虽然你我离得很近 可生活却是一条平行线 你在你的世界里 我在我的世界里 我们的相遇只能靠偶遇 然后一人向左,一人向右 仍然过着各自的生活 也许此时你只是我人生中的一道风景 远远相望,心生欢喜 如果我们只是停留在此时 也就不会有后续发生的故...

  我眼前就是松花江。千年万年以来,这条大江一直在默默地奔流。 立春已过,春寒料峭,春意阑珊。独立残冬,沐浴着江风习习,贪婪地呼吸着清新的空气,我的心无比的开阔。不由得想起歌德那首脍炙人口的诗,“在明媚的五月里,所有的花儿都开放,我向我的心上人道出了我内心的爱慕与渴望;在明媚的...


点击排行