CN107291611A - 调用第三方测试工具的测试系统及方法 - Google Patents

调用第三方测试工具的测试系统及方法 Download PDF

Info

Publication number
CN107291611A
CN107291611A CN201610225023.1A CN201610225023A CN107291611A CN 107291611 A CN107291611 A CN 107291611A CN 201610225023 A CN201610225023 A CN 201610225023A CN 107291611 A CN107291611 A CN 107291611A
Authority
CN
China
Prior art keywords
test
module
test assignment
database
assignment information
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
CN201610225023.1A
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.)
ZTE Corp
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN201610225023.1A priority Critical patent/CN107291611A/zh
Priority to PCT/CN2017/076694 priority patent/WO2017177783A1/zh
Publication of CN107291611A publication Critical patent/CN107291611A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • 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)
  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种调用第三方测试工具的测试系统,该系统包括:任务信息获取模块,用于获取用户提交的测试任务信息,将测试任务信息保存在预置的数据库中;任务管理模块,用于获取数据库保存的测试任务信息,将测试任务信息发送给客户端代理模块;客户端代理模块,用于在接收到测试任务信息后,根据测试任务信息包含的第三方测试工具的信息向对应的调用模块发送测试任务信息包含的测试参数;调用模块,用于在接收到测试参数后,调用第三方测试工具基于测试参数执行测试任务。本发明还公开了一种调用第三方测试工具的测试方法。本发明实现了通过平台就可以调用各种第三方工具执行测试,实现便捷、高效的测试方式。

Description

调用第三方测试工具的测试系统及方法
技术领域
本发明涉及云测试技术领域,尤其涉及调用第三方测试工具的测试系统及方法。
背景技术
随着测试技术的发展,各种测试工具层出不穷,在软件研发过程中,通常会使用各种类型的第三方测试工具进行测试,如功能测试类工具、安全类测试工具、性能类测试工具等,或者是使用不同的第三方测试工具进行某一类型的测试,如使用PageSpeed、Yslow进行网站性能测试。然而这些工具的运行模式多样,使用方法也不尽相同,当测试人员需要对一个软件进行测试时往往需要掌握多种测试工具的安装部署方式和软件测试工具使用方法,增加了测试任务完成的时间和复杂度,同时多名测试人员在各自设备上进行测试工具的安装部署,也导致了设备资源的浪费。
发明内容
本发明的主要目的在于提供一种调用第三方测试工具的测试系统及方法,旨在实现提供一种便捷、高效的测试系统的目的。
为实现上述目的,本发明提供一种调用第三方测试工具的测试系统,所述系统包括:
任务信息获取模块,用于获取用户提交的测试任务信息,将所述测试任务信息保存在预置的数据库中;
任务管理模块,用于获取所述数据库保存的所述测试任务信息,将所述测试任务信息发送给客户端代理模块;
所述客户端代理模块,用于在接收到所述测试任务信息后,根据所述测试任务信息包含的第三方测试工具的信息向对应的调用模块发送所述测试任务信息包含的测试参数;
所述调用模块,用于在接收到所述测试参数后,调用所述第三方测试工具基于所述测试参数执行测试任务。
优选地,所述任务管理模块包括:
获取单元,用于访问所述数据库,获取所述数据库包含的所述测试任务信息;
查询单元,用于在获取到所述测试任务信息后,查询所述测试任务信息对应的测试执行状态;
查询分配单元,用于当所述测试执行状态为待执行状态时,查询系统进程中状态为空闲的客户端代理模块,向所述客户端代理模块发送所述测试任务信息。
优选地,所述调用模块,还用于获取所述第三方测试工具执行完所述测试任务后反馈的测试报告,将所述测试报告处理为预置的文本格式保存为已处理测试报告,向所述客户端代理模块反馈所述测试任务完成的通知消息。
优选地,所述客户端代理模块,还用于当接收到所述通知消息时,向所述调用模块获取并保存所述已处理测试报告。
优选地,所述任务管理模块,还用于访问所述客户端代理模块,当获取到所述通知消息时,将所述数据库中所述测试任务信息对应的测试执行状态标记为已完成状态,将所述已处理测试报告下载并保存在所述数据库中。
优选地,所述任务信息获取模块,还用于访问所述数据库,当获取到所述数据库中所述测试任务信息对应的测试执行状态为已完成状态时,从所述数据库获取所述已处理测试报告,显示在用户显示界面。
本发明进一步提供一种调用第三方测试工具的测试方法,所述方法包括步骤:
任务信息获取模块获取用户提交的测试任务信息,将所述测试任务信息保存在预置的数据库中;
任务管理模块获取所述数据库保存的所述测试任务信息,将所述测试任务信息发送给客户端代理模块;
所述客户端代理模块在接收到所述测试任务信息后,根据所述测试任务信息包含的第三方测试工具的信息向对应的调用模块发送所述测试任务信息包含的测试参数;
所述调用模块在接收到所述测试参数后,调用所述第三方测试工具基于所述测试参数执行测试任务。
优选地,所述任务管理模块获取所述数据库保存的所述测试任务信息,将所述测试任务信息发送给客户端代理模块包括:
访问所述数据库,获取所述数据库包含的所述测试任务信息;
在获取到所述测试任务信息后,查询所述测试任务信息对应的测试执行状态;
当所述测试执行状态为待执行状态时,查询系统进程中状态为空闲的客户端代理模块,向所述客户端代理模块发送所述测试任务信息。
优选地,所述调用模块在接收到所述测试参数后,调用所述第三方测试工具基于所述测试参数执行测试任务之后包括:
所述调用模块获取所述第三方测试工具执行完所述测试任务后反馈的测试报告,将所述测试报告处理为预置的文本格式保存为已处理测试报告,向所述客户端代理模块反馈所述测试任务完成的通知消息;
当所述客户端代理模块接收到所述通知消息时,结合所述任务管理模块和所述任务信息获取模块将所述已处理测试报告显示在用户显示界面。
优选地,所述当所述客户端代理模块接收到所述通知消息时,结合所述任务管理模块和所述任务信息获取模块将所述已处理测试报告显示在用户显示界面包括:
当所述客户端代理模块获取到所述通知消息时,向所述调用模块获取并保存所述已处理测试报告;
任务管理模块访问所述客户端代理模块,当获取到所述通知消息时,将所述数据库中所述测试任务信息对应的测试执行状态标记为已完成状态,将所述已处理测试报告下载并保存在所述数据库中。
所述任务信息获取模块访问所述数据库,当获取到所述数据库中所述测试任务信息对应的测试执行状态为已完成状态时,从所述数据库获取所述已处理测试报告,显示在所述用户显示界面。
本发明提出的调用第三方测试工具的测试系统和方法通过任务信息获取模块获取用户提交的测试任务信息,将所述测试任务信息保存在预置的数据库中;任务管理模块获取所述数据库保存的所述测试任务信息,将所述测试任务信息发送给客户端代理模块;所述客户端代理模块在接收到所述测试任务信息后,根据所述测试任务信息包含的第三方测试工具的信息向对应的调用模块发送所述测试任务信息包含的测试参数;所述调用模块在接收到所述测试参数后,调用所述第三方测试工具基于所述测试参数执行测试任务。通过任务信息获取模块获取并保存测试任务信息,任务管理模块发送测试任务信息给客户端代理模块,客户端代理模块调用对应的调用模块,调用模块再调用对应的第三方测试工具执行完成测试任务,使用户不需要安装各种工具,也不需要详细了解每一种工具的使用方法,只要通过平台就可以调用各种第三方工具执行测试,实现便捷、高效的测试方式。
附图说明
图1为本发明调用第三方测试工具的测试系统第一实施例的功能模块结构示意图;
图2为本发明调用第三方测试工具的测试系统的系统架构示例图;
图3为本发明调用第三方测试工具的测试系统通过程序实现第三方工具调用的方法示例图;
图4为本发明图1所示实施例中任务管理模块20的细化功能模块示意图;
图5为本发明调用第三方测试工具的测试方法第一实施例的流程示意图;
图6为本发明图5所示实施例中步骤S20的细化流程示意图;
图7为本发明图5所示实施例中步骤S40之后追加的步骤的流程示意图;
图8为本发明图7所示实施例中步骤S60的细化流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供一种调用第三方测试工具的测试系统,参照图1,在第一实施例中,该系统包括:
任务信息获取模块10,用于获取用户提交的测试任务信息,将所述测试任务信息保存在预置的数据库中;
任务管理模块20,用于获取所述数据库保存的所述测试任务信息,将所述测试任务信息发送给客户端代理模块;
所述客户端代理模块30,用于在接收到所述测试任务信息后,根据所述测试任务信息包含的第三方测试工具的信息向对应的调用模块发送所述测试任务信息包含的测试参数;
所述调用模块40,用于在接收到所述测试参数后,调用所述第三方测试工具基于所述测试参数执行测试任务。
本发明实施例中提供的调用第三方测试工具的测试系统包括任务信息获取模块10、任务管理模块20、客户端代理模块30、调用模块40,其中调用模块20包含至少两个,每个调用模块20能调用不同的第三方测试工具执行测试,其中任务信息获取模块10和任务管理模块20通过预置的数据库联系,调用第三方测试工具的测试系统的系统架构图如图2所示,第三方测试工具是已经部署好的,只在需要时被调用执行。当用户在任务信息获取模块10输入测试任务后,能够通过调用第三方测试工具完成测试任务的执行。
本实施例中上述任务信息获取模块10用于获取并保存测试任务信息,当任务信息获取模块10获取到用户提交的测试任务信息后,将测试任务信息保存在预置的数据库中。任务信息获取模块10可以是网站形式,也可以是windows客户端程序,也可以是安卓系统中的apk程序。上述测试任务信息包含需要使用第三方测试工具时需要的测试参数,例如包括第三方测试工具名称,表明需要使用何种第三方测试工具来进行测试,还可以包括待测试网址,表明需要测试的是哪个网站,也可以包括测试策略等。在任务信息获取模块10中,可以显示能被调用的各种第三方测试工具的信息,例如第三方测试工具的名称,以及当测试开始以后的测试状态等信息,因此用户可以根据需要进行选择输入。
上述任务管理模块20可以查询预置的数据库中保存的测试任务信息,任务信息获取模块10与任务管理模块20可以部署在同一台服务器上。当任务管理模块20接收到测试任务信息后,可以将测试任务信息分配给客户端代理模块30。
当客户端代理模块30收到测试任务信息后,调用对应的调用模块40,调用的同时也将测试任务信息包含的测试参数传递给调用模块40。由于系统中存在多个调用模块40,具体的调用哪一个调用模块,可以根据测试任务中包含的第三方测试工具的信息来决定,例如可以通过第三方工具测试的名称来调用相同名称的调用模块。在程序实现时,在客户端代理模块30中,规定第三方测试工具的初始化、参数、结果等抽象基类,客户端代理模块30可以以插件的形式管理调用模块40,即客户端代理模块30调用多个调用模块40。
上述调用模块40调用对应的第三方测试工具,使对应的第三方测试工具根据测试任务信息中包含的测试参数执行测试任务,并且根据对应的第三方测试工具的特征调用方式来进行调用。在程序实现时调用模块可以继承初始化、参数、结果等抽象基类,在程序中编写函数定义每一种第三方测试工具的调用方法。例如,能够用命令行调用的测试工具,使用进程调用该测试工具;只能界面操作的测试工具,使用图形用户界面(Graphical User Interface,GUI)进行调用,如利用selenium调用;具备消息接口的测试工具,通过接口通信调用。
具体程序实现时,也可以编写特征动态链接库,特征动态链接库中规定第三方测试工具的初始化、参数、结果等抽象基类,客户端代理模块20引用特征动态链接库,也即引用特征动态链接库中规定的第三方测试工具的初始化、参数、结果等抽象基类,每一个用于调用第三方测试工具的调用模块40继承特征动态链接库中的类,实例化特征动态链接库中的类。因此客户端代理模块20可以动态加载调用模块40,使得调用模块在被加载后执行其中的调用函数,调用第三方测试工具执行测试。上述通过程序实现第三方测试工具的调用方法如图3所示。
例如,当用户需要使用WebInspect和NSFocus两种测试工具进行网站安全性扫描时。这两个工具需要的主要交互参数为要扫描的目标网址和扫描策略,在任务信息获取模块10中输入目标网址,并分别按提示选择两个工具的扫描策略,提交测试任务信息并保存到数据库。此时任务管理模块20扫描数据库获取测试任务后将测试任务信息传递给客户端代理模块30,客户端代理模块30获取测试任务包含的测试工具名称WebInspect和NSFocus,以及WebInspect和NSFoucus分别对应的测试参数,再调用WebInspect和NSFocus对应的调用模块40,通过该调用模块40调用WebInspect和NSFocus测试工具完成执行具体的测试任务。
本实施例通过任务信息获取模块10获取用户提交的测试任务信息,将所述测试任务信息保存在预置的数据库中;任务管理模块20获取所述数据库保存的所述测试任务信息,将所述测试任务信息发送给客户端代理模块30;所述客户端代理模块30在接收到所述测试任务信息后,根据所述测试任务信息包含的第三方测试工具的信息向对应的调用模块40发送所述测试任务信息包含的测试参数;所述调用模块40在接收到所述测试参数后,调用所述第三方测试工具基于所述测试参数执行测试任务。通过任务信息获取模块10获取并保存测试任务信息,任务管理模块20发送测试任务信息给客户端代理模块30,客户端代理模块30调用对应的调用模块40,调用模块40再调用对应的第三方测试工具执行完成测试任务,使用户不需要安装各种工具,也不需要详细了解每一种工具的使用方法,只要通过平台就可以调用各种第三方工具执行测试,实现便捷、高效的测试方式。
优选地,参照图4,为本发明调用第三方测试工具的测试系统第一实施例中任务管理模块20的细化功能模块示意图,上述任务管理模块20包括:
获取单元21,用于访问所述数据库,获取所述数据库包含的所述测试任务信息;
查询单元22,用于在获取到所述测试任务后,查询所述测试任务信息对应的测试执行状态;
查询分配单元23,用于当所述测试执行状态为待执行状态时,查询系统进程中状态为空闲的客户端代理模块,向所述客户端代理模块发送所述测试任务信息。
本实施例中上述数据库是任务信息获取模块10保存测试任务信息的数据库,第二获取模块21访问数据库,当获取到数据库中的测试任务信息后,查询测试任务信息对应的测试执行状态,由于数据库中会存放很多测试任务信息,每个测试任务信息对应的测试执行状态可能不同,因此当测试任务信息对应的测试执行状态为待执行状态时,表明该测试任务信息已经被获取但该测试任务信息所代表的测试任务并未被执行,此时查询系统进程中空闲的客户端代理模块30,根据客户端代理模块30的地址向客户端代理模块30分配测试任务。
本实施例通过任务管理模块20查询数据库获取测试任务信息,查询空闲的客户端代理模块30,向空闲的客户端代理30模块分配测试任务信息,使测试任务信息所代表的测试任务能够尽快的被执行。
优选地,上述调用模块40,还用于获取所述第三方测试工具执行完所述测试任务后反馈的测试报告,将所述测试报告处理为预置的文本格式保存为已处理测试报告,向所述客户端代理模块反馈所述测试任务完成的通知消息。
本实施例中当第三方测试工具执行完测试以后,调用模块40获取该第三方测试工具执行完测试以后的测试报告,并向调用该调用模块40的客户端代理模块30反馈测试任务完成的通知消息。
当调用模块40获取到测试报告后,对测试报告的格式进行处理保存为已处理测试报告,使得各种第三方测试工具执行完测试以后都能以同一种格式呈现测试报告。可以理解的是,即可以向用户提供统一格式的测试报告,也可以提供第三方测试工具执行完测试任务后的自动生成的原始测试报告。
例如,当某第三方测试工具执行完测试后,测试报告为Word格式的文本文件,此时,获取Word、格式中的文本信息,将该文本信息处理为PDF格式保存。同时,也可以将测试报告按照测试结果的危险等级进行排序,测试报告按照高危、中危、低危进行分类处理并保存。
本实施例通过调用模块40接收对应的第三方测试工具执行完测试任务后反馈的测试报告,并对测试报告进行处理,使用户在调用第三方测试工具执行完测试后能看到测试结果,并且测试结果的格式统一便于查看分析。
优选地,上述客户端代理模块30,还用于当接收到所述通知消息时,向所述调用模块获取并保存所述已处理测试报告。
本实施例中上述客户端代理模块30接收到测试任务完成的通知消息后,向该调用模块40获取已处理测试报告,将已处理测试报告保存在客户端代理模块30所在的服务器中。
本实施例通过客户端代理模块30接收通知消息,获取并保存调用模块40的测试报告,使任务管理模块20可以从客户端代理模块30中获取测试任务的执行情况和的测试报告,从而使得结合任务信息获取模块10能够使用户在调用第三方测试工具执行完测试后能看到测试报告。
优选地,上述任务管理模块20,还用于访问所述客户端代理模块,当获取到所述通知消息时,将所述数据库中所述测试任务信息对应的测试执行状态标记为已完成状态,将所述已处理测试报告下载并保存在所述数据库中。
本实施例中任务管理模块20访问客户端代理模块,当获取到测试任务完成的通知消息时,表明此时测试任务已经完成,任务管理模块20将数据库中测试任务信息对应的测试执行状态标记为已完成状态,同时从客户端代理模块30下载已处理测试报告保存在数据库中。可以为任务管理模块20设定访问客户端代理模块30的时间,例如,设置任务管理模块定时获取测试任务的执行情况。
本实施例通过任务管理模块20访问客户端代理模块30,当获取到测试任务完成的通知消息时,并将数据库中的测试任务信息对应的测试执行状态标记为已完成状态,使任务信息获取模块10能从数据库中获取到测试任务的执行状况,并及时获取已完成测试任务的测试报告。
优选地,上述任务信息获取模块10,还用于访问所述数据库,当获取到所述数据库中所述测试任务信息对应的测试执行状态为已完成状态时,从所述数据库获取所述已处理测试报告,显示在用户显示界面。
本实施例中任务信息获取模块10获取到数据库中的测试任务信息对应的测试执行状态为已完成状态时,表明该测试任务已经完成,并且已经产生了测试报告。此时从数据库中获取已处理测试报告,同时将已处理测试报告显示在用户显示界面,用户可以对已处理测试报告进行查看、保存等操作。也可以在用户显示界面显示已处理测试报告的详细信息和已处理测试报告的下载链接,具体的测试后显示测试报告的方式可以根据需要进行选择。
本实施例通过任务信息获取模块获取测试报告并显示在用户显示界面,使得用户在测试任务完成后能够查看、分析、管理该测试任务的测试报告。
本发明还提供一种调用第三方测试工具的测试方法,参照图5,提供了本发明调用第三方测试工具的测试方法第一实施例,该实施例中,调用第三方测试工具的测试方法包括:
步骤S10,任务信息获取模块获取用户提交的测试任务信息,将所述测试任务信息保存在预置的数据库中;
步骤S20,任务管理模块获取所述数据库保存的所述测试任务信息,将所述测试任务信息发送给客户端代理模块;
步骤S30,所述客户端代理模块在接收到所述测试任务信息后,根据所述测试任务信息包含的第三方工具的信息向对应的调用模块发送所述测试任务信息包含的测试参数;
步骤S40,所述调用模块在接收到所述测试参数后,调用所述第三方测试工具基于所述测试参数执行测试任务。
本发明实施例中提供的调用第三方测试工具的测试方法,实现了当用户在任务信息获取模块输入测试任务后,通过任务管理模块、客户端代理模块和调用模块的层层调用,最终调用对应的第三方测试工具完成测试任务的执行。
本实施例中上述任务信息获取模块用于获取并保存测试任务信息,当任务信息获取模块获取到用户提交的测试任务信息后,将测试任务信息保存在预置的数据库中。任务信息获取模块可以是网站形式,也可以是windows客户端程序,也可以是安卓系统中的apk程序。上述测试任务信息包含需要使用第三方测试工具时需要的测试参数,例如包括第三方测试工具名称,表明需要使用何种第三方测试工具来进行测试,还可以包括待测试网址,表明需要测试的是哪个网站,也可以包括测试策略等。在任务信息获取模块中,可以显示能被调用的各种第三方测试工具的信息,例如第三方测试工具的名称,以及当测试开始以后的测试状态等信息,因此用户可以根据需要进行选择输入。
上述任务管理模块可以查询预置的数据库中保存的测试任务信息,任务信息获取模块与任务管理模块可以部署在同一台服务器上。当任务管理模块接收到测试任务信息后,可以将测试任务信息分配给客户端代理模块。
当客户端代理模块收到测试任务信息后,调用对应的调用模块,调用的同时也将测试任务信息包含的测试参数传递给调用模块。由于系统中存在多个调用模块,具体的调用哪一个调用模块,可以根据测试任务中包含的第三方测试工具的信息来决定,例如可以通过第三方工具测试的名称来调用相同名称的调用模块。在程序实现时,在客户端代理模块中,规定第三方测试工具的初始化、参数、结果等抽象基类,客户端代理模块可以以插件的形式管理调用模块,即客户端代理模块调用多个调用模块。
上述调用模块调用对应的第三方测试工具,使对应的第三方测试工具根据测试任务信息中包含的测试参数执行测试任务,并且根据对应的第三方测试工具的特征调用方式来进行调用。在程序实现时调用模块可以继承初始化、参数、结果等抽象基类,在程序中编写函数定义每一种第三方测试工具的调用方法。例如,能够用命令行调用的测试工具,使用进程调用该测试工具;只能界面操作的测试工具,使用图形用户界面(Graphical User Interface,GUI)进行调用,如利用selenium调用;具备消息接口的测试工具,通过接口通信调用。
具体程序实现时,也可以编写特征动态链接库,特征动态链接库中规定第三方测试工具的初始化、参数、结果等抽象基类,客户端代理模块引用特征动态链接库,也即引用特征动态链接库中规定的第三方测试工具的初始化、参数、结果等抽象基类,每一个用于调用第三方测试工具的调用模块继承特征动态链接库中的类,实例化特征动态链接库中的类。因此客户端代理模块可以动态加载调用模块,使得调用模块在被加载后执行其中的调用函数,调用第三方测试工具执行测试。上述通过程序实现第三方测试工具的调用方法如图3所示。
例如,当用户需要使用WebInspect和NSFocus两种测试工具进行网站安全性扫描时。这两个工具需要的主要交互参数为要扫描的目标网址和扫描策略,在任务信息获取模块中输入目标网址,并分别按提示选择两个工具的扫描策略,提交测试任务信息并保存到数据库。此时任务管理模块扫描数据库获取测试任务后将测试任务信息传递给客户端代理模块,客户端代理模块获取测试任务包含的测试工具名称WebInspect和NSFocus,以及WebInspect和NSFoucus分别对应的测试参数,再调用WebInspect和NSFocus对应的调用模块,通过该调用模块调用WebInspect和NSFocus测试工具完成执行具体的测试任务。
本实施例通过任务信息获取模块获取用户提交的测试任务信息,将所述测试任务信息保存在预置的数据库中;任务管理模块获取所述数据库保存的所述测试任务信息,将所述测试任务信息发送给客户端代理模块;所述客户端代理模块在接收到所述测试任务信息后,根据所述测试任务信息包含的第三方测试工具的信息向对应的调用模块发送所述测试任务信息包含的测试参数;所述调用模块在接收到所述测试参数后,调用所述第三方测试工具基于所述测试参数执行测试任务。通过任务信息获取模块获取并保存测试任务信息,任务管理模块发送测试任务信息给客户端代理模块,客户端代理模块调用对应的调用模块,调用模块再调用对应的第三方测试工具执行完成测试任务,使用户不需要安装各种工具,也不需要详细了解每一种工具的使用方法,只要通过平台就可以调用各种第三方工具执行测试,实现便捷、高效的测试方式。
优选地,参照图6,为本发明调用第三方测试工具的测试方法第一实施例中步骤S20的细化流程示意图,上述步骤S20的细化步骤包括:
步骤S21,访问所述数据库,获取所述数据库包含的所述测试任务信息;
步骤S22,在获取到所述测试任务信息后,查询所述测试任务信息对应的测试执行状态;
步骤S23,当所述测试执行状态为待执行状态时,查询系统进程中状态为空闲的客户端代理模块,向所述客户端代理模块发送所述测试任务信息。
本实施例中上述数据库是任务信息获取模块保存测试任务信息的数据库,第二获取模块访问数据库,当获取到数据库中的测试任务信息后,查询测试任务信息对应的测试执行状态,由于数据库中会存放很多测试任务信息,每个测试任务信息对应的测试执行状态可能不同,因此当测试任务信息对应的测试执行状态为待执行状态时,表明该测试任务信息已经被获取但该测试任务信息所代表的测试任务并未被执行,此时查询系统进程中空闲的客户端代理模块,根据客户端代理模块的地址向客户端代理模块分配测试任务。
本实施例通过任务管理模块查询数据库获取测试任务信息,查询空闲的客户端代理模块,向空闲的客户端代理模块分配测试任务信息,使测试任务信息所代表的测试任务能够尽快的被执行。
优选地,参照图7,为本发明调用第三方测试工具的测试方法第一实施例中步骤S40之后追加步骤的流程示意图,上述步骤S40之后还包括:
步骤S50,所述调用模块获取所述第三方测试工具执行完所述测试任务后反馈的测试报告,将所述测试报告处理为预置的文本格式保存为已处理测试报告,向所述客户端代理模块反馈所述测试任务完成的通知消息;
步骤S60,当所述客户端代理模块接收到所述通知消息时,结合所述任务管理模块和所述任务信息获取模块将所述已处理测试报告显示在用户显示界面。
本实施例中当第三方测试工具执行完测试以后,调用模块获取该第三方测试工具执行完测试以后的测试报告,并向调用该调用模块的客户端代理模块反馈测试任务完成的通知消息。
当调用模块获取到测试报告后,对测试报告的格式进行处理保存为已处理测试报告,使得各种第三方测试工具执行完测试以后都能以同一种格式呈现测试报告。可以理解的是,即可以向用户提供统一格式的测试报告,也可以提供第三方测试工具执行完测试任务后的自动生成的原始测试报告。
例如,当某第三方测试工具执行完测试后,测试报告为Word格式的文本文件,此时,获取Word、格式中的文本信息,将该文本信息处理为PDF格式保存。同时,也可以将测试报告按照测试结果的危险等级进行排序,测试报告按照高危、中危、低危进行分类处理并保存。
本实施例通过调用模块获取任务完成后的测试报告,并将测试报告处理为已处理测试报告,再结合任务管理模块、任务信息获取模块将已处理测试报告反馈显示在用户界面,使得用户通过在任务信息获取模块输入测试任务后能够在任务信息获取模块获取测试报告。
优选地,参照图8,为图7所述实施例中步骤S60的细化流程示意图,上述步骤S60包括:
步骤S610,当所述客户端代理模块获取到所述通知消息时,向所述调用模块获取并保存所述已处理测试报告;
步骤S620,任务管理模块访问所述客户端代理模块,当获取到所述通知消息时,将所述数据库中所述测试任务信息对应的测试执行状态标记为已完成状态,将所述已处理测试报告下载并保存在所述数据库中。
步骤S630,当所述任务信息获取模块获取到所述数据库中所述测试任务信息对应的测试执行状态为已完成状态时,从所述数据库获取所述已处理测试报告,显示在所述用户显示界面。
本实施例中上述通知消息是调用模块向客户端代理模块发送的消息,通知消息用于通知客户端代理模块,该测试任务已执行完成。当述客户端代理模块接收到测试任务完成的通知消息后,向该任务管理模块获取已处理测试报告,将已处理测试报告保存在客户端代理模块所在的服务器中。
当任务管理模块访问客户端代理模块并获取到测试任务完成的通知消息时,表明此时测试任务已经完成,任务管理模块将数据库中测试任务信息对应的测试执行状态标记为已完成状态,同时从客户端代理模块下载已处理测试报告保存在数据库中。可以为任务管理模块设定访问客户端代理模块的时间,例如,设置任务管理模块定时获取测试任务的执行情况。
当任务信息获取模块获取到数据库中的测试任务信息对应的测试执行状态为已完成状态时,表明任务信息获取模块获取到提交进行测试的测试任务已经完成,并且已经产生了测试报告。此时从数据库中获取已处理测试报告,同时将已处理测试报告显示在用户显示界面,用户可以对已处理测试报告进行查看、保存等操作。也可以在用户显示界面显示已处理测试报告的详细信息和已处理测试报告的下载链接,具体的测试后显示测试报告的方式可以根据需要进行选择。
本实施例当客户端代理模块获取到测试任务完成的通知消息后,向调用模块获取并保存已处理测试报告,任务管理模块访问客户端代理并获取到测试任务完成的通知消息后将数据库中该测试任务信息对应的测试执行状态标记为已完成状态,使得任务信息获取模块可以获取测试的执行情况,并及时下载测试任务执行完之后的已处理测试报告反馈给用户,使用户在调用第三方测试工具执行完测试后能及时获取测试结果。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种调用第三方测试工具的测试系统,其特征在于,所述系统包括:
任务信息获取模块,用于获取用户提交的测试任务信息,将所述测试任务信息保存在预置的数据库中;
任务管理模块,用于获取所述数据库保存的所述测试任务信息,将所述测试任务信息发送给客户端代理模块;
所述客户端代理模块,用于在接收到所述测试任务信息后,根据所述测试任务信息包含的第三方测试工具的信息向对应的调用模块发送所述测试任务信息包含的测试参数;
所述调用模块,用于在接收到所述测试参数后,调用所述第三方测试工具基于所述测试参数执行测试任务。
2.如权利要求1所述的系统,其特征在于,所述任务管理模块包括:
获取单元,用于访问所述数据库,获取所述数据库包含的所述测试任务信息;
查询单元,用于在获取到所述测试任务信息后,查询所述测试任务信息对应的测试执行状态;
查询分配单元,用于当所述测试执行状态为待执行状态时,查询系统进程中状态为空闲的客户端代理模块,向所述客户端代理模块发送所述测试任务信息。
3.如权利要求1所述的系统,其特征在于,所述调用模块,还用于获取所述第三方测试工具执行完所述测试任务后反馈的测试报告,将所述测试报告处理为预置的文本格式保存为已处理测试报告,向所述客户端代理模块反馈所述测试任务完成的通知消息。
4.如权利要求3所述的系统,其特征在于,所述客户端代理模块,还用于当接收到所述通知消息时,向所述调用模块获取并保存所述已处理测试报告。
5.如权利要求4所述的系统,其特征在于,所述任务管理模块,还用于访问所述客户端代理模块,当获取到所述通知消息时,将所述数据库中所述测试任务信息对应的测试执行状态标记为已完成状态,将所述已处理测试报告下载并保存在所述数据库中。
6.如权利要求5所述的系统,其特征在于,所述任务信息获取模块,还用于访问所述数据库,当获取到所述数据库中所述测试任务信息对应的测试执行状态为已完成状态时,从所述数据库获取所述已处理测试报告,显示在用户显示界面。
7.一种调用第三方测试工具的测试方法,其特征在于,所述方法包括以下步骤:
任务信息获取模块获取用户提交的测试任务信息,将所述测试任务信息保存在预置的数据库中;
任务管理模块获取所述数据库保存的所述测试任务信息,将所述测试任务信息发送给客户端代理模块;
所述客户端代理模块在接收到所述测试任务信息后,根据所述测试任务信息包含的第三方测试工具的信息向对应的调用模块发送所述测试任务信息包含的测试参数;
所述调用模块在接收到所述测试参数后,调用所述第三方测试工具基于所述测试参数执行测试任务。
8.如权利要求7所述的方法,其特征在于,所述任务管理模块获取所述数据库保存的所述测试任务信息,将所述测试任务信息发送给客户端代理模块包括:
访问所述数据库,获取所述数据库包含的所述测试任务信息;
在获取到所述测试任务信息后,查询所述测试任务信息对应的测试执行状态;
当所述测试执行状态为待执行状态时,查询系统进程中状态为空闲的客户端代理模块,向所述客户端代理模块发送所述测试任务信息。
9.如权利要求7或8所述的方法,其特征在于,所述所述调用模块在接收到所述测试参数后,调用所述第三方测试工具基于所述测试参数执行测试任务之后包括:
所述调用模块获取所述第三方测试工具执行完所述测试任务后反馈的测试报告,将所述测试报告处理为预置的文本格式保存为已处理测试报告,向所述客户端代理模块反馈所述测试任务完成的通知消息;
当所述客户端代理模块接收到所述通知消息时,结合所述任务管理模块和所述任务信息获取模块将所述已处理测试报告显示在用户显示界面。
10.如权利要求9所述的方法,其特征在于,所述当所述客户端代理模块接收到所述通知消息时,结合所述任务管理模块和所述任务信息获取模块将所述已处理测试报告显示在用户显示界面包括:
当所述客户端代理模块获取到所述通知消息时,向所述调用模块获取并保存所述已处理测试报告;
任务管理模块访问所述客户端代理模块,当获取到所述通知消息时,将所述数据库中所述测试任务信息对应的测试执行状态标记为已完成状态,将所述已处理测试报告下载并保存在所述数据库中。
所述任务信息获取模块访问所述数据库,当获取到所述数据库中所述测试任务信息对应的测试执行状态为已完成状态时,从所述数据库获取所述已处理测试报告,显示在所述用户显示界面。
CN201610225023.1A 2016-04-11 2016-04-11 调用第三方测试工具的测试系统及方法 Pending CN107291611A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201610225023.1A CN107291611A (zh) 2016-04-11 2016-04-11 调用第三方测试工具的测试系统及方法
PCT/CN2017/076694 WO2017177783A1 (zh) 2016-04-11 2017-03-15 调用第三方测试工具的测试系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610225023.1A CN107291611A (zh) 2016-04-11 2016-04-11 调用第三方测试工具的测试系统及方法

Publications (1)

Publication Number Publication Date
CN107291611A true CN107291611A (zh) 2017-10-24

Family

ID=60041398

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610225023.1A Pending CN107291611A (zh) 2016-04-11 2016-04-11 调用第三方测试工具的测试系统及方法

Country Status (2)

Country Link
CN (1) CN107291611A (zh)
WO (1) WO2017177783A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112597043A (zh) * 2020-12-28 2021-04-02 深圳供电局有限公司 软件测试方法、装置、计算机设备和存储介质

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107908568B (zh) * 2017-11-29 2024-03-15 中标软件有限公司 操作系统性能自动化测试方法及装置
CN111488283B (zh) * 2020-04-14 2023-06-16 拉扎斯网络科技(上海)有限公司 任务生成方法、装置、电子设备及存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
MY176486A (en) * 2012-12-06 2020-08-12 Mimos Berhad Automated test environment deployment with metric recommender for performance testing on iaas cloud
CN104461856B (zh) * 2013-09-22 2018-04-20 阿里巴巴集团控股有限公司 基于云计算平台的性能测试方法、装置及系统
CN104539487B (zh) * 2015-01-20 2018-04-17 成都益联科创科技有限公司 一种基于云平台的系统测试及可靠性评估方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112597043A (zh) * 2020-12-28 2021-04-02 深圳供电局有限公司 软件测试方法、装置、计算机设备和存储介质

Also Published As

Publication number Publication date
WO2017177783A1 (zh) 2017-10-19

Similar Documents

Publication Publication Date Title
US10140205B1 (en) Systems and methods for infrastructure validation
CN103186444B (zh) 一种性能测试方法、测试平台及测试机
US20050096870A1 (en) Method of providing content to a target device in a network
US7502716B2 (en) Closed-loop diagnostic method
CN108319552A (zh) 一种埋点测试方法,装置及系统
US20050223101A1 (en) Computer-implemented method, system and program product for resolving prerequisites for native applications utilizing an open service gateway initiative ( OSGi) framework
CN106569951A (zh) 一种脱离页面的Web测试方法
CN109408375A (zh) 接口文档的生成方法和装置
CN106897207A (zh) 用户界面测试方法与装置
CN107291611A (zh) 调用第三方测试工具的测试系统及方法
CN112463588A (zh) 一种自动化测试系统及方法、存储介质、计算设备
CN108319550A (zh) 一种测试系统及测试方法
CN104683181B (zh) 一种性能监控方法、设备和系统
CN108234246A (zh) 一种多向测试服务器网络性能的方法及系统
CN107015912A (zh) 实现远程调试的系统、方法、装置、及电子设备
CN103617118A (zh) 测试结果的统一处理方法、装置及系统
CN1750486A (zh) 网络测量体系结构及其实现方法
Nevedrov Using jmeter to performance test web services
CN107360036B (zh) 一种网络故障定位方法、终端和服务器
US20070143471A1 (en) Methods, systems and computer program products for evaluating suitability of a network for packetized communications
US7617462B2 (en) Graphical user interface (GUI) for displaying software component availability as determined by a messaging infrastructure
CN114625645A (zh) 业务测试方法、装置、电子设备以及可读存储介质
CN113553260B (zh) 测试方法、测试装置、设备和介质
CN106878455A (zh) 一种基于互联网的服务信息的获取方法和服务器
CN110597710A (zh) 测试覆盖率统计方法、装置、计算机设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20171024