一种基于技术标准文档的API接口适配验证系统的制作方法

文档序号:37587309发布日期:2024-04-18 12:16阅读:12来源:国知局
一种基于技术标准文档的API接口适配验证系统的制作方法

本发明涉及软件测试,具体涉及一种基于技术标准文档的api接口适配验证系统。


背景技术:

1、在现代软件开发中,api(application programming interface)接口的测试至关重要。api接口是不同软件组件之间的桥梁,通过它们实现数据传输和功能交互。api接口测试工具是一类专门用于验证和测试这些接口的软件工具。它们可以模拟api请求,验证api响应,并确保接口在不同情况下都能正常工作。这些工具可以用于测试web服务、restfulapi、soap api、微服务以及其他类型的api。

2、此外,为了实现不同平台或系统之间的应用交互、数据流通,如云计算中iaas平台接口与paas平台接口间的交互、paas平台不同组件直接的互相交互,技术规范或者行业标准通常会对平台或系统间交互的接口进行明确定义。如何根据技术规范或者行业标准中的接口定义,对相应平台或系统的交互接口进行适配验证,对实现统一运维管理、分层解耦异构兼容,具有重要意义。

3、现有技术中,已存在有基于计算机程序进行api测试的技术方案。比如,中国专利cn201510975134.x公开了一种api测试方法及系统,包括:制作测试案例表单并存储;捕获需要测试的指令,如果指令是测试目标函数指令,则从所述案例表单中调取与目标函数对应的所有案例,从已被标记的案例开始按照所有案例的编号依次运行的代码进行测试,得到每个案例的实际运行结果,进入结果对比和显示;如果指令是测试案例的指令,从案例表单中调取所述案例的案例编号及与案例相关的函数,调取函数的运行代码,将案例加载到所述运行代码中运行并获得实际运行结果,进入结果对比和显示。本发明大大增加测试效率和测试的准确度,有效记录测试结果,通过查看测试表格可直接查看api存在的问题及缺陷,提高应用开发的效率。

4、但是,在实际实施过程中,发明人发现,上述测试方法通常依赖于技术人员对相关代码、指令、案例进行分析,从而编写相关的代码,其相对耗时,导致了测试效率低下的问题。


技术实现思路

1、针对现有技术中存在的上述问题,现提供一种基于技术标准文档的api接口适配验证系统。

2、具体技术方案如下:

3、一种基于技术标准文档的api接口适配验证系统,包括:

4、文档抽取模块,所述文档抽取模块获取对应于待验证软件的技术标准文档,所述文档抽取模块自所述技术标准文档中提取得到api接口信息;

5、所述技术标准文档包括技术规范和行业标准文档;

6、验证流程代码生成模块,所述验证流程代码生成模块连接所述文档抽取模块,所述验证流程代码生成模块依照所述api接口信息确定多个api接口之间的依赖关系,随后根据所述依赖关系生成验证流程代码;

7、模板输出模块,所述模板输出模块连接所述验证流程代码生成模块,所述模板输出模块依照所述验证流程代码和所述api接口信息生成验证模板;

8、所述验证模板依照所述待验证软件的软件信息填写;

9、测试模块,所述测试模块连接所述模板输出模块,所述测试模块采用所述验证流程代码依照所述验证模板对所述待验证软件进行验证。

10、另一方面,所述文档抽取模块包括:

11、文本解析模块,所述文本解析模块对输入的所述技术标准文档进行遍历,以提取到目标文本;

12、所述目标文本包括接口名称、api请求参数信息列表、api返回参数信息列表、列表标题及测试示例;

13、文本清洗模块,所述文本清洗模块连接所述文本解析模块,所述文本清洗模块对所述目标文本进行清洗得到清洗文本;

14、对照关系建立模块,所述对照关系建立模块连接所述文本清洗模块,所述对照关系建立模块依照所述清洗文本对每个接口分别建立对应关系作为所述api接口信息;

15、所述对应关系包括所述接口对应的所述接口名称、所述api请求参数信息列表、所述api返回参数信息列表、所述列表标题及所述测试示例。

16、另一方面,所述文本解析模块包括:

17、poi解析器,所述poi解析器对所述技术标准文档进行遍历以获取所述目标文本;

18、翻译模块,所述翻译模块连接所述poi解析器,所述翻译模块对所述poi解析器的遍历过程进行识别,当所述技术标准文档中仅存在接口中文名称,未提供英文名称时,所述翻译模块依照所述接口中文名称生成对应的所述英文名称。

19、另一方面,所述文本清洗模块包括:

20、文本融合模块,所述文本融合模块对输入的所述目标文本进行遍历以获取重复文本,所述文本融合模块对所述重复文本进行文本融合后形成融合文本;

21、参数清洗模块,所述参数清洗模块连接所述文本融合模块,所述参数清洗模块对所述融合文本中的接口参数信息进行清洗后形成所述清洗信息并输出。

22、另一方面,所述验证流程代码生成模块包括:

23、节点生成模块,所述节点生成模块获取所述api接口信息中的接口并形成对应的接口节点;

24、关联生成模块,所述关联生成模块连接所述节点生成模块,所述关联生成模块依照所述api接口信息确定多个所述接口节点之间的节点关联;

25、依赖关系生成模块,所述依赖关系生成模块连接所述关联生成模块,所述依赖关系生成模块依照所述节点关联确定所述接口节点之间的所述依赖关系;

26、流程编排模块,所述流程编排模块连接所述依赖关系生成模块,所述流程编排模块依照所述依赖关系确定验证流程;

27、代码生成模块,所述代码生成模块依照所述验证流程生成所述验证流程代码。

28、另一方面,所述模板输出模块包括:

29、第一模板生成模块,所述第一模板生成模块依照所述api接口信息生成请求参数值配置模板和对预期返回结果值验证模板;

30、第二模板生成模块,所述第二模板生成模块依照所述api接口信息和所述验证流程代码生成接入访问信息模板。

31、另一方面,所述测试模块包括:

32、数据集生成模块,所述数据集生成模块依照所述请求参数值配置模板和所述返回结果值验证模板生成测试数据集;

33、第一测试模块,所述第一测试模块针对所述待测试软件调用所述接入访问信息模板生成接入访问信息并输入所述待测试软件;

34、第二测试模块,所述第二测试模块连接所述数据集生成模块,所述第二测试模块依照所述测试数据集对所述待测试软件进行测试。

35、另一方面,所述测试模块还包括:

36、结果输出模块,所述结果输出模块分别连接所述第一测试模块和所述第二测试模块,所述结果输出模块获取测试数据并生成测试报告。

37、上述技术方案具有如下优点或有益效果:

38、针对现有技术中的api接口测试过程主要依赖人工对代码进行分析、编写相应的测试代码效率较低的问题,本实施例中通过文档抽取模块预先对技术标准文档进行提取,从而确定关联于待测试软件的接口信息。基于该接口信息可进一步生成验证流程以及用于对输入输出信息进行控制的验证模板,最后由测试模块进行自动化测试。基于上述设置,可实现对待验证软件的api接口的自动化测试流程,节省了人力。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1