CN112363912A - 一种全面自动化接口测试的方法 - Google Patents

一种全面自动化接口测试的方法 Download PDF

Info

Publication number
CN112363912A
CN112363912A CN202011100819.7A CN202011100819A CN112363912A CN 112363912 A CN112363912 A CN 112363912A CN 202011100819 A CN202011100819 A CN 202011100819A CN 112363912 A CN112363912 A CN 112363912A
Authority
CN
China
Prior art keywords
interface
test
testing
framework
background
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202011100819.7A
Other languages
English (en)
Inventor
姚佳佳
侯卫峰
孙贤雯
尚伟
王泽�
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Software Group Co Ltd
Original Assignee
Inspur Software Group Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inspur Software Group Co Ltd filed Critical Inspur Software Group Co Ltd
Priority to CN202011100819.7A priority Critical patent/CN112363912A/zh
Publication of CN112363912A publication Critical patent/CN112363912A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开一种全面自动化接口测试的方法,涉及接口测试技术领域;利用Angular JS前端框架的可视化界面进行接口信息、相关参数信息的配置及接口测试类型的选择,根据配置及所选择的接口测试类型通过Node服务与后台交互,后台分别利用相应组件搭建测试框架进行接口功能测试、接口安全测试及接口性能测试,通过统一的可视化界面,获取输入接口信息及相关配置后,能够自动化完成接口的功能测试、安全测试和性能测试,测试过程操作简单,无需进行大量的代码操作,无需专职人员操作,大幅度提高接口测试效率,同时无需重复安装接口测试工具,不占用过多资源,满足接口的快速且全面测试的需求。

Description

一种全面自动化接口测试的方法
技术领域
本发明公开一种接口测试的方法,涉及接口测试技术领域,具体地说是一种全面自动化接口测试的方法。
背景技术
传统的软件开发模式不分前后端,现有的开发模式为了兼容更多种类的前端,前后端逻辑的分离设计已经常态化,前后端相互之间通过接口调用进行数据交互。接口测试作为软件质量的一部分,能够更直观高效的测试***的正确性和稳定性,并且因其更接近底层实现,使一些高复杂平台的缺陷检测更为有效,修复缺陷的成本也更为低廉。从简单的功能测试,到复杂的安全测试和性能测试,计算机软件领域都对接口测试的需求越来越高。目前虽然市面上存在一些接口测试工具,但测试项目比较单一,通常只支持功能、性能和安全中的某项,而测试人员做接口测试时需要安装多个工具,不仅占用资源,而且学习成本高,无法满足接口的快速全面测试的需求。
发明内容
本发明针对现有技术的问题,提供一种全面自动化接口测试的方法,具有通用性强、实施简便等特点,应用前景广阔。
本发明提出的具体方案是:
一种全面自动化接口测试的方法,利用Angular JS前端框架的可视化界面进行接口信息、相关参数信息的配置及接口测试类型的选择,
根据配置及所选择的接口测试类型通过Node服务与后台交互,后台分别利用相应组件搭建测试框架进行接口功能测试、接口安全测试及接口性能测试。
优选地,所述的方法中后台利用Ant组件进行测试数据的依赖管理及编译,利用Gson进行数据解析及转换,利用Logback管理日志。
优选地,所述的方法中通过Ant组件使用Jsoup作为接口功能测试的网络接口调用框架,并利用TestNG组件管理接口测试脚本以及测试过程。
优选地,所述的方法中通过Ant组件使用Guava IO作为接口安全测试及接口性能测试的网络接口调用框架,并利用TestNG组件管理接口测试脚本以及测试过程。
优选地,所述的方法中利用Guava提供的Files类进行接口安全测试脚本的生成,并通过AppsanCMD调用接口安全测试脚本执行扫描任务和生成扫描报告。
优选地,所述的方法中利用Guava提供的Files类进行接口性能测试脚本的生成,并调用Jmeter接口执行接口性能测试脚本。
一种全面自动化接口测试的***,包括前端模块、交互模块及后端模块,
前端模块利用Angular JS前端框架的可视化界面进行接口信息、相关参数信息的配置及接口测试类型的选择,
交互模块根据配置及所选择的接口测试类型通过Node服务与后台交互,后端模块通过后台分别利用相应组件搭建测试框架进行接口功能测试、接口安全测试及接口性能测试。
一种全面自动化接口测试的装置,包括:至少一个存储器和至少一个处理器;
所述至少一个存储器,用于存储机器可读程序;
所述至少一个处理器,用于调用所述机器可读程序,执行所述的一种全面自动化接口测试的方法。
本发明的有益之处是:
本发明提供一种全面自动化接口测试的方法,通过统一的可视化界面,获取输入接口信息及相关配置后,能够自动化完成接口的功能测试、安全测试和性能测试,测试过程操作简单,无需进行大量的代码操作,无需专职人员操作,大幅度提高接口测试效率,同时无需重复安装接口测试工具,不占用过多资源,满足接口的快速且全面测试的需求。
附图说明
图1是本发明前端框架示意图;
图2是本发明对接口进行功能测试的框架示意图;
图3是本发明对接口进行安全测试的框架示意图;
图4是本发明对接口进行性能测试的框架示意图;
图5是本发明执行步骤流程示意图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定。
本发明提供一种全面自动化接口测试的方法,利用Angular JS前端框架的可视化界面进行接口信息、相关参数信息的配置及接口测试类型的选择,
根据配置及所选择的接口测试类型通过Node服务与后台交互,后台分别利用相应组件搭建测试框架进行接口功能测试、接口安全测试及接口性能测试。
利用本发明方法通过提供统一的可视化界面,能够支持多种协议的接口类型,同时支持接口的功能、安全和性能测试,不需要每个人安装多个工具,节约资源;提供统一的输入和测试报告输出,使得我们的测试更具有专业性和一致性;提供简单易用的可视化界面,操作简单,无需学习,上手即可使用,降低了测试成本,提高了测试效率。
在本发明的一些实施例中,参考图1,显示了前端可视化界面的开发采用AngularJS前端框架,运用了MVW(Model-View-Whatever)、模块化、语义化标签、依赖注入等手段,通过指令扩展HTML,且通过表达式绑定数据到HTML;使用HTML中的标签及CSS样式进行网页布局,如通过内联框架在当前HTML文档中嵌入另一个报告展示页面,实现不同测试报告之间的切换展示等;通过JavaScript开发页面逻辑,如切换标签、获取文本内容、获取元素对应内容、键值对转json数组、调用服务接口等,而通过Node服务,采用了为Node.js的Express Web应用框架进行前后台的交互,Node.js平台提供了很多方便的模块,可以根据需求的模块自己定义package.json,如通过node-xlsx完成数据流的转换,从而实现将前端页面传入的数据流导出Excel表格等;前端页面调用Node服务后,完成导出Excel文件,并通过触发.bat/.sh(视***环境而定),进行响应类型的测试内容。
在本发明的另一些实施例中,具体介绍了后台接口测试部分的技术框架,其中采用Jsoup+TestNG的测试框架,进行接口功能测试,使用DataProvide组件实现测试数据的参数化,通过Apache POI组件实现测试数据的读取;选用了Jsoup作为网络接口调用框架,比Httpclient更轻量,对于Response的Document解析也更加快捷;TestNG测试框架管理测试脚本以及测试驱动;ReportNG组件生成HTML格式报告,易于阅读;Ant进行依赖管理、打包编译;Gson用于数据解析,转换Java对象为Json字符串和把Json字符串转换为对象的工具类;Assert用于检查点设置,独立封装了检查点,极大方便检查点的设置;Logback清晰的记录用例执行日志方便问题定位,参考图2,。
而后台进行接口安全测试时,采用TestNG的测试框架,使用DataProvide组件实现测试数据的参数化,通过Apache POI组件实现测试数据的读取;选用Google Guava提供的Files类进行安全测试脚本的生成;选用TestNG测试框架管理测试脚本以及测试驱动;通过Appsan CMD调用安全测试脚本执行扫描任务和生成扫描报告;Ant进行依赖管理、打包编译;Gson用于数据解析,转换Java对象为Json字符串和把Json字符串转换为对象的工具类;Logback清晰的记录用例执行日志方便问题定位,参考图3。
后台进行接口性能测试时,采用TestNG的测试框架,依托强大的Java库进行开发设计。数据驱动设计,使用DataProvide组件实现测试数据的参数化,通过Apache POI组件实现测试数据的读取;选用Google Guava提供的Files类进行性能测试脚本的生成;TestNG测试框架管理测试脚本以及测试驱动;调用Jmeter接口执行测试脚本;XSL样式文件格式化输出HTML聚合报告结果;Ant进行依赖管理、打包编译;Gson用于数据解析,转换Java对象为Json字符串和把Json字符串转换为对象的工具类;Logback清晰的记录用例执行日志方便问题定位,参考图4。
同时本发明还提供一种全面自动化接口测试的***,包括前端模块、交互模块及后端模块,
前端模块利用Angular JS前端框架的可视化界面进行接口信息、相关参数信息的配置及接口测试类型的选择,
交互模块根据配置及所选择的接口测试类型通过Node服务与后台交互,后端模块通过后台分别利用相应组件搭建测试框架进行接口功能测试、接口安全测试及接口性能测试。
上述***内各模块的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
同时本发明提供一种全面自动化接口测试的装置,包括:至少一个存储器和至少一个处理器;
所述至少一个存储器,用于存储机器可读程序;
所述至少一个处理器,用于调用所述机器可读程序,执行所述的一种全面自动化接口测试的方法。
上述装置内的处理器的信息交互、执行可读代码的过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
需要说明的是,上述各流程和***结构中不是所有的步骤和模块都是必须的,可以根据实际的需要忽略某些步骤或模块。各步骤的执行顺序不是固定的,可以根据需要进行调整。上述各实施例中描述的***结构可以是物理结构,也可以是逻辑结构,即,有些模块可能由同一物理实体实现,或者,有些模块可能分由多个物理实体实现,或者,可以由多个独立设备中的某些部件共同实现。
以上所述实施例仅是为充分说明本发明而所举的较佳的实施例,本发明的保护范围不限于此。本技术领域的技术人员在本发明基础上所作的等同替代或变换,均在本发明的保护范围之内。本发明的保护范围以权利要求书为准。

Claims (8)

1.一种全面自动化接口测试的方法,其特征是利用Angular JS前端框架的可视化界面进行接口信息、相关参数信息的配置及接口测试类型的选择,
根据配置及所选择的接口测试类型通过Node服务与后台交互,后台分别利用相应组件搭建测试框架进行接口功能测试、接口安全测试及接口性能测试。
2.根据权利要求1所述的一种全面自动化接口测试的方法,其特征是后台利用Ant组件进行测试数据的依赖管理及编译,利用Gson进行数据解析及转换,利用Logback管理日志。
3.根据权利要求2所述的一种全面自动化接口测试的方法,其特征是通过Ant组件使用Jsoup作为接口功能测试的网络接口调用框架,并利用TestNG组件管理接口测试脚本以及测试过程。
4.根据权利要求2或3所述的一种全面自动化接口测试的方法,其特征是通过Ant组件使用Guava IO作为接口安全测试及接口性能测试的网络接口调用框架,并利用TestNG组件管理接口测试脚本以及测试过程。
5.根据权利要求2或4所述的一种全面自动化接口测试的方法,其特征是利用Guava提供的Files类进行接口安全测试脚本的生成,并通过AppsanCMD调用接口安全测试脚本执行扫描任务和生成扫描报告。
6.根据权利要求2或4所述的一种全面自动化接口测试的方法,其特征是利用Guava提供的Files类进行接口性能测试脚本的生成,并调用Jmeter接口执行接口性能测试脚本。
7.一种全面自动化接口测试的***,其特征是包括前端模块、交互模块及后端模块,
前端模块利用Angular JS前端框架的可视化界面进行接口信息、相关参数信息的配置及接口测试类型的选择,
交互模块根据配置及所选择的接口测试类型通过Node服务与后台交互,后端模块通过后台分别利用相应组件搭建测试框架进行接口功能测试、接口安全测试及接口性能测试。
8.一种全面自动化接口测试的装置,其特征是包括:至少一个存储器和至少一个处理器;
所述至少一个存储器,用于存储机器可读程序;
所述至少一个处理器,用于调用所述机器可读程序,执行权利要求1至6中任一所述的一种全面自动化接口测试的方法。
CN202011100819.7A 2020-10-15 2020-10-15 一种全面自动化接口测试的方法 Pending CN112363912A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011100819.7A CN112363912A (zh) 2020-10-15 2020-10-15 一种全面自动化接口测试的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011100819.7A CN112363912A (zh) 2020-10-15 2020-10-15 一种全面自动化接口测试的方法

Publications (1)

Publication Number Publication Date
CN112363912A true CN112363912A (zh) 2021-02-12

Family

ID=74506811

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011100819.7A Pending CN112363912A (zh) 2020-10-15 2020-10-15 一种全面自动化接口测试的方法

Country Status (1)

Country Link
CN (1) CN112363912A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113254914A (zh) * 2021-04-24 2021-08-13 中电长城网际***应用广东有限公司 基于可视化展示的前后端同步管理方法及***
CN114138670A (zh) * 2021-12-10 2022-03-04 四川启睿克科技有限公司 基于接口自动化测试与功能、性能、安全测试融合的方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113254914A (zh) * 2021-04-24 2021-08-13 中电长城网际***应用广东有限公司 基于可视化展示的前后端同步管理方法及***
CN114138670A (zh) * 2021-12-10 2022-03-04 四川启睿克科技有限公司 基于接口自动化测试与功能、性能、安全测试融合的方法
CN114138670B (zh) * 2021-12-10 2024-05-14 四川启睿克科技有限公司 基于接口自动化测试与功能、性能、安全测试融合的方法

Similar Documents

Publication Publication Date Title
CN109189684B (zh) 基于Python的接口自动化测试方法
US10372594B2 (en) Method and device for retrieving test case based on code coverage
US6941546B2 (en) Method and apparatus for testing a software component using an abstraction matrix
US8881105B2 (en) Test case manager
CN110716870B (zh) 服务的自动化测试方法及装置
CN1908895B (zh) 验证应用程序全球化问题的***和方法
CN107526676B (zh) 一种跨***测试方法及装置
CN109976729B (zh) 一种存算显全局可配置的数据分析软件架构设计方法
CN112363912A (zh) 一种全面自动化接口测试的方法
CN109240700B (zh) 关键代码定位方法与***
Amalfitano et al. The DynaRIA tool for the comprehension of Ajax web applications by dynamic analysis
CN112817853A (zh) 一种自动测试方法、***和电子设备
Zhu et al. A test automation solution on gui functional test
CN117370217B (zh) 一种基于python的接口测试结果自动生成方法
Jian-Ping et al. Application analysis of automated testing framework based on robot
CN113836014A (zh) 一种接口测试方法、装置、电子设备和存储介质
CN109062784B (zh) 接口参数约束代码入口定位方法与***
CN116841543A (zh) 基于Flutter动态生成跨平台多端应用的开发方法
CN115514677B (zh) 服务器拨测方法及***
Li et al. A framework of model-driven web application testing
CN113641594B (zh) 跨端自动化测试方法以及相关装置
US20040153871A1 (en) Automatic analysis of the properties of a system based on runtime logs
KR100969877B1 (ko) 품질테스트자동화시스템
CN109062785B (zh) 接口参数约束代码定位方法与***
CN113485919A (zh) 测试方法、测试装置及计算机可读存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination