• 浪潮孙丕恕从信息时代到智能时代 人工智能价值将爆发式释放 2019-12-21
  • 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
    • / 16
    • 下载费用:30 金币  

    重庆时时彩龙虎合开奖: 基于数据处理的测试方法及装置、系统.pdf

    关 键 词:
    基于 数据处理 测试 方法 装置 系统
      专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    摘要
    申请专利号:

    CN201310165932.7

    申请日:

    2013.05.08

    公开号:

    CN104142882A

    公开日:

    2014.11.12

    当前法律状态:

    授权

    有效性:

    有权

    法律详情: 授权|||实质审查的生效IPC(主分类):G06F 11/36申请日:20130508|||公开
    IPC分类号: G06F11/36 主分类号: G06F11/36
    申请人: 百度在线网络技术(北京)有限公司
    发明人: 白立平; 金敬亭
    地址: 100085 北京市海淀区上地十街10号百度大厦
    优先权:
    专利代理机构: 北京鸿德海业知识产权代理事务所(普通合伙) 11412 代理人: 袁媛
    PDF完整版下载: PDF下载
    法律状态
    申请(专利)号:

    CN201310165932.7

    授权公告号:

    ||||||

    法律状态公告日:

    2019.02.12|||2016.05.11|||2014.11.12

    法律状态类型:

    授权|||实质审查的生效|||公开

    摘要

    本发明实施例提供一种基于数据处理的测试方法及装置、系统。本发明实施例通过接收源端进程通过底层链路发送的数据包,进而将所述数据包发送给数据处理中心,以使得所述数据处理中心根据与测试目的相关的处理逻辑,对所述数据包进行处理,然后,接收所述数据处理中心发送的处理结果信息,使得能够根据所述处理结果信息,执行测试操作,由于数据处理中心能够对源端进程发送的数据包进行处理,因此,能够避免现有技术中只能针对所录制的数据包进行回放的问题,从而提高了测试的灵活性。

    权利要求书

    权利要求书
    1.  一种基于数据处理的测试方法,其特征在于,包括:
    接收源端进程通过底层链路发送的数据包;
    将所述数据包发送给数据处理中心,以使得所述数据处理中心根据与测试目的相关的处理逻辑,对所述数据包进行处理;
    接收所述数据处理中心发送的处理结果信息;
    根据所述处理结果信息,执行测试操作。

    2.  根据权利要求1所述的方法,其特征在于,所述将所述数据包发送给数据处理中心之前,还包括:
    运行预先配置的脚本文件,以向所述数据处理中心注册所述处理逻辑。

    3.  根据权利要求1或2所述的方法,其特征在于,所述接收源端进程通过底层链路发送的数据包之后,所述接收所述数据处理中心发送的处理结果信息之前,还包括:
    将所述底层链路的第一状态信息发送给所述数据处理中心,以使得所述数据处理中心接收到所述数据包之后,根据所述底层链路的第一状态信息和所述处理逻辑,对所述数据包进行处理。

    4.  根据权利要求1~3任一权利要求所述的方法,其特征在于,所述数据处理中心根据与测试目的相关的处理逻辑,对所述数据包进行处理之前,还包括:
    所述数据处理中心通过RPC接口,获得所述底层链路的第二状态信息;
    所述数据处理中心接收到所述数据包之后,根据所述底层链路的第二状态信息和所述处理逻辑,对所述数据包进行处理。

    5.  根据权利要求3或4所述的方法,其特征在于,所述方法还包括:
    所述数据处理中心接收到所述数据包之后,根据所述底层链路的第一状态信息、所述底层链路的第二状态信息和所述处理逻辑,对所述数据包进行处理。

    6.  根据权利要求1~5任一权利要求所述的方法,其特征在于,所述数据处理中心对所述数据包进行处理,包括:
    所述数据处理中心对所述数据包进行修改。

    7.  根据权利要求6所述的方法,其特征在于,所述处理结果信息包括:
    修改之后的数据包;或者
    修改之后的数据包和修改指示。

    8.  根据权利要求6或7所述的方法,其特征在于,所述根据所述处理结果信息,执行测试操作,包括:
    向目标端进程发送所述修改之后的数据包。

    9.  根据权利要求1~5任一权利要求所述的方法,其特征在于,所述数据处理中心对所述数据包进行处理,包括:
    所述数据处理中心对所述数据包进行检测。

    10.  根据权利要求9所述的方法,其特征在于,所述处理结果信息包括:
    操作指示;或者
    操作指示和所述数据包。

    11.  根据权利要求9或10所述的方法,其特征在于,所述根据所述处理结果信息,执行测试操作,包括:
    根据所述操作指示,执行与所述操作指示对应的操作。

    12.  一种基于数据处理的测试装置,其特征在于,包括:
    接收单元,用于接收源端进程通过底层链路发送的数据包;
    发送单元,用于将所述数据包发送给数据处理中心,以使得所述数据处理中心根据与测试目的相关的处理逻辑,对所述数据包进行处理;
    所述接收单元,还用于接收所述数据处理中心发送的处理结果信息;
    执行单元,用于根据所述处理结果信息,执行测试操作。

    13.  根据权利要求12所述的装置,其特征在于,所述装置还包括注册单元,用于
    运行预先配置的脚本文件,以向所述数据处理中心注册所述处理逻辑。

    14.  根据权利要求12或13所述的装置,其特征在于,所述发送单元,还用于
    将所述底层链路的第一状态信息发送给所述数据处理中心,以使得所述数据处理中心接收到所述数据包之后,根据所述底层链路的第一状态信息和所述处理逻辑,对所述数据包进行处理。

    15.  根据权利要求12~14任一权利要求所述的装置,其特征在于,所述数据处理中心对所述数据包进行处理,包括:所述数据处理中心对所述数据包进行修改;所述处理结果信息包括:
    修改之后的数据包;或者
    修改之后的数据包和修改指示。

    16.  根据权利要求15所述的装置,其特征在于,所述执行单元,具体用于
    向目标端进程发送所述修改之后的数据包。

    17.  根据权利要求12~14任一权利要求所述的装置,其特征在于,所述数据处理中心对所述数据包进行处理,包括:所述数据处理中心对所述数据包进行检测;所述处理结果信息包括:
    操作指示;或者
    操作指示和所述数据包。

    18.  根据权利要求17所述的装置,其特征在于,所述执行单元,具体用于
    根据所述操作指示,执行与所述操作指示对应的操作。

    19.  一种基于数据处理的测试系统,其特征在于,包括数据处理中心和权利要求12~18任一权利要求所述的装置;其中,所述数据处理中心,用于
    接收所述数据包;根据与测试目的相关的处理逻辑,对所述数据包进行处理;以及,发送所述处理结果信息。

    20.  根据权利要求19所述的系统,其特征在于,
    所述数据处理中心,还用于
    接收所述底层链路的第一状态信息;
    所述数据处理中心,具体用于
    接收到所述数据包之后,根据所述底层链路的第一状态信息和所述处理逻辑,对所述数据包进行处理。

    21.  根据权利要求19或20所述的系统,其特征在于,
    所述数据处理中心,还用于
    通过RPC接口,获得所述底层链路的第二状态信息;
    所述数据处理中心,具体用于
    接收到所述数据包之后,根据所述底层链路的第二状态信息和所述处理逻辑,对所述数据包进行处理。

    22.  根据权利要求20或21所述的系统,其特征在于,所述数据处理中心,具体用于
    接收到所述数据包之后,根据所述底层链路的第一状态信息、所述底层链路的第二状态信息和所述处理逻辑,对所述数据包进行处理。

    说明书

    说明书基于数据处理的测试方法及装置、系统
    【技术领域】
    本发明涉及测试技术,尤其涉及一种基于数据处理的测试方法及装置、系统。
    【背景技术】
    在软件测试过程中,录制/回放方式是一种常用的测试手段。现有的录制/回放方式是基于底层链路,例如,链路层链路、IP层链路或传输层链路等,通过接管底层链路的方式来实现录制和回放。
    然而,现有的录制/回放方式,只能针对所录制的数据包进行回放,从而导致了测试的灵活性的降低。
    【发明内容】
    本发明的多个方面提供一种基于数据处理的测试方法及装置、系统,用以提高测试的灵活性。
    本发明的一方面,提供一种基于数据处理的测试方法,包括:
    接收源端进程通过底层链路发送的数据包;
    将所述数据包发送给数据处理中心,以使得所述数据处理中心根据与测试目的相关的处理逻辑,对所述数据包进行处理;
    接收所述数据处理中心发送的处理结果信息;
    根据所述处理结果信息,执行测试操作。
    如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述将所述数据包发送给数据处理中心之前,还包括:
    运行预先配置的脚本文件,以向所述数据处理中心注册所述处理逻辑。
    如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述接收源端进程通过底层链路发送的数据包之后,所述接收所述数据处理中心发送的处理结果信息之前,还包括:
    将所述底层链路的第一状态信息发送给所述数据处理中心,以使得所述数据处理中心接收到所述数据包之后,根据所述底层链路的第一状态信息和所述处理逻辑,对所述数据包进行处理。
    如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述数据处理中心根据与测试目的相关的处理逻辑,对所述数据包进行处理之前,还包括:
    所述数据处理中心通过RPC接口,获得所述底层链路的第二状态信息;
    所述数据处理中心接收到所述数据包之后,根据所述底层链路的第二状态信息和所述处理逻辑,对所述数据包进行处理。
    如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述方法还包括:
    所述数据处理中心接收到所述数据包之后,根据所述底层链路的第一状态信息、所述底层链路的第二状态信息和所述处理逻辑,对所述数据包进行处理。
    如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述数据处理中心对所述数据包进行处理,包括:
    所述数据处理中心对所述数据包进行修改。
    如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所 述处理结果信息包括:
    修改之后的数据包;或者
    修改之后的数据包和修改指示。
    如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述根据所述处理结果信息,执行测试操作,包括:
    向目标端进程发送所述修改之后的数据包。
    如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述数据处理中心对所述数据包进行处理,包括:
    所述数据处理中心对所述数据包进行检测。
    如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述处理结果信息包括:
    操作指示;或者
    操作指示和所述数据包。
    如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述根据所述处理结果信息,执行测试操作,包括:
    根据所述操作指示,执行与所述操作指示对应的操作。
    本发明的另一方面,提供一种基于数据处理的测试装置,包括:
    接收单元,用于接收源端进程通过底层链路发送的数据包;
    发送单元,用于将所述数据包发送给数据处理中心,以使得所述数据处理中心根据与测试目的相关的处理逻辑,对所述数据包进行处理;
    所述接收单元,还用于接收所述数据处理中心发送的处理结果信息;
    执行单元,用于根据所述处理结果信息,执行测试操作。
    如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述装置还包括注册单元,用于
    运行预先配置的脚本文件,以向所述数据处理中心注册所述处理逻辑。
    如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述发送单元,还用于
    将所述底层链路的第一状态信息发送给所述数据处理中心,以使得所述数据处理中心接收到所述数据包之后,根据所述底层链路的第一状态信息和所述处理逻辑,对所述数据包进行处理。
    如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述数据处理中心对所述数据包进行处理,包括:所述数据处理中心对所述数据包进行修改;所述处理结果信息包括:
    修改之后的数据包;或者
    修改之后的数据包和修改指示。
    如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述执行单元,具体用于
    向目标端进程发送所述修改之后的数据包。
    如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述数据处理中心对所述数据包进行处理,包括:所述数据处理中心对所述数据包进行检测;所述处理结果信息包括:
    操作指示;或者
    操作指示和所述数据包。
    如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述执行单元,具体用于
    根据所述操作指示,执行与所述操作指示对应的操作。
    本发明的另一方面,提供一种基于数据处理的测试系统,包括数据处理中心和上述装置;其中,所述数据处理中心,用于
    接收所述数据包;根据与测试目的相关的处理逻辑,对所述数据包进行处理;以及,发送所述处理结果信息。
    如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,
    所述数据处理中心,还用于
    接收所述底层链路的第一状态信息;
    所述数据处理中心,具体用于
    接收到所述数据包之后,根据所述底层链路的第一状态信息和所述处理逻辑,对所述数据包进行处理。
    如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,
    所述数据处理中心,还用于
    通过RPC接口,获得所述底层链路的第二状态信息;
    所述数据处理中心,具体用于
    接收到所述数据包之后,根据所述底层链路的第二状态信息和所述处理逻辑,对所述数据包进行处理。
    如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述数据处理中心,具体用于
    接收到所述数据包之后,根据所述底层链路的第一状态信息、所述底层链路的第二状态信息和所述处理逻辑,对所述数据包进行处理。
    由上述技术方案可知,本发明实施例通过接收源端进程通过底层链路发送的数据包,进而将所述数据包发送给数据处理中心,以使得所述数据处理中心根据与测试目的相关的处理逻辑,对所述数据包进行处理,然后,接收所述数据处理中心发送的处理结果信息,使得能够根据所述处理结果信息,执行测试操作,由于数据处理中心能够对源端进程发送的数据包进行处理,因此,能够避免现有技术中只能针对所录制的数据包进行回放的问题,从而提高了测试的灵活性。
    另外,采用本发明提供的技术方案,由于直接将接收到的源端进程发送的数据包发送给数据处理中心进行处理,无需将所述数据包下载下来,在利用其他工具进行修改,无需操作人员参与测试过程,操作简单,且正确率高,从而进一步提高了测试的灵活性,以及测试的效率。
    另外,采用本发明提供的技术方案,由于与测试目的相关的处理逻辑是数据处理中心处理源端进程发送的数据包的处理依据,无需测试用例考虑这些处理逻辑,从而进一步提高了测试的灵活性,以及测试的自动化。
    另外,采用本发明提供的技术方案,由于与测试目的相关的处理逻辑是数据处理中心处理源端进程发送的数据包的处理依据,如果需要修改这些处理逻辑,只需要将修改之后的处理逻辑重新向数据处理中心进行注册即可,无需修改整个测试流程和测试用例,从而进一步提高了测试的灵活性,以及测试的自动化。
    【附图说明】
    为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有 技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
    图1为本发明一实施例提供的基于数据处理的测试方法的流程示意图;
    图2为本发明另一实施例提供的基于数据处理的测试装置的结构示意图;
    图3为本发明另一实施例提供的基于数据处理的测试装置的结构示意图;
    图4为本发明另一实施例提供的基于数据处理的测试系统的结构示意图。
    【具体实施方式】
    为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例?;诒痉⒚髦械氖凳├?,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明?;さ姆段?。
    需要说明的是,本实施例中,所述的源端进程和目的端进程可以为需要通信的业务进程、系统服务进程和第三方公共服务进程中的至少一个进程等。
    另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
    图1为本发明一实施例提供的基于数据处理的测试方法的流程示意图,如图1所示。
    101、接收源端进程通过底层链路发送的数据包。
    102、将所述数据包发送给数据处理中心,以使得所述数据处理中心根据与测试目的相关的处理逻辑,对所述数据包进行处理。
    103、接收所述数据处理中心发送的处理结果信息。
    104、根据所述处理结果信息,执行测试操作。
    需要说明的是,101~104的执行主体可以为测试工具。
    这样,通过接收源端进程通过底层链路发送的数据包,进而将所述数据包发送给数据处理中心,以使得所述数据处理中心根据与测试目的相关的处理逻辑,对所述数据包进行处理,然后,接收所述数据处理中心发送的处理结果信息,使得能够根据所述处理结果信息,执行测试操作,由于数据处理中心能够对源端进程发送的数据包进行处理,因此,能够避免现有技术中只能针对所录制的数据包进行回放的问题,从而提高了测试的灵活性。
    可选地,在本实施例的一个可能的实现方式中,在102之前,测试工具还可以进一步运行预先配置的脚本文件,以向所述数据处理中心注册所述处理逻辑。
    具体地,所述脚本文件具体可以包括利用Python语言、超级文本预处理(Hypertext Preprocessor,PHP)语言或Ruby语言等面向对象编程语言进行编译的文件。
    具体地,所述处理逻辑,可以理解为至少一个用于处理数据的回调函数。例如,这个回调函数可以是测试工具所在环境中部署的python函数,或者还可以为测试用例所在环境中部署的python函数,等,本实施例对此不进行限定。如果回调函数为测试用例所在环境中部署的python函数,具体可以采用序列化的技术将这个python函数传递到远端的数据处理中心。
    可选地,在本实施例的一个可能的实现方式中,在101之后,103之前,测试工具还可以进一步将所述底层链路的第一状态信息发送给所述数据处理中心,以使得所述数据处理中心接收到所述数据包之后,根据所述底层链路的第一状态信息和所述处理逻辑,对所述数据包进行处理。
    可以理解的是,所述第一状态信息为所述处理逻辑中所涉及的限定条件。具体地,所述第一状态信息可以包括但不限于链路状态信息,本实施例对此不进行限定。例如,总共发生了多少次数据传输、源端进程标识、目标端进程标识和数据包的应用层协议标识等。
    可选地,在本实施例的一个可能的实现方式中,在103之前,所述数据 处理中心还可以进一步通过远程过程调用(Remote Function Call,RPC)接口,获得所述底层链路的第二状态信息。至此,所述数据处理中心在接收到所述数据包之后,则可以根据所述底层链路的第二状态信息和所述处理逻辑,对所述数据包进行处理。
    可以理解的是,所述第二状态信息为所述处理逻辑中所涉及的其他限定条件。具体地,所述第二状态信息可以包括但不限于除了链路状态信息之外的其他状态信息,本实施例对此不进行限定。例如,接管底层链路的总数量、指定底层链路在全部底层链路中的位置次序和指定底层链路的发生数据修改的总次数等。
    进一步地,所述数据处理中心在接收到所述数据包之后,则可以根据所述底层链路的第一状态信息、所述底层链路的第二状态信息和所述处理逻辑,对所述数据包进行处理。
    可选地,在本实施例的一个可能的实现方式中,假设所述数据处理中心对所述数据包进行修改;相应地,所述处理结果信息可以包括但不限于:
    修改之后的数据包;或者
    修改之后的数据包和修改指示。
    具体地,在104中,测试工具具体可以向目标端进程发送所述修改之后的数据包,以实现测试目的。
    可选地,在本实施例的一个可能的实现方式中,假设所述数据处理中心对所述数据包进行检测;相应地,所述处理结果信息可以包括但不限于:
    操作指示;或者
    操作指示和所述数据包。
    具体地,在104中,测试工具具体可以根据所述操作指示,执行与所述操作指示对应的操作,例如,关闭所述底层链接或丢弃所述数据包,以实现测试目的。
    为使得本发明实施例提供的方法更加清楚,下面将以现有的能够实现录制和回放的测试工具作为举例。本实施例中,测试工具运行在一个独立的进 程即进程A中,测试用例运行另一个不同的进程即进程B中。在接管底层链路的测试工具中嵌入脚本解释器,例如,python解释器(PyInterpreter),以支持脚本文件的运行。测试工具会建立两个套接字(socket)连接,其中的一个socket连接用于在源端进程与测试工具之间传递数据,另一个socket连接用于在测试工具与目标端进程之间传递数据。源端进程有数据包A需要向目标端进程发送。测试工具通过socket连接接收到数据包A之后,先将数据包A发送给数据修改中心,该数据修改中心运行在进程A的一个线程中。所述数据处理中心则可以根据预先注册的与测试目的相关的处理逻辑,对数据包A进行处理。例如,将数据包A的第4个字节的内容修改为“XXXX”。然后,数据修改中心向测试工具返回修改后的数据包A即数据包B和用于指示已经修改的修改指示。
    测试工具根据所述修改指示,将数据包B发送给目标端进程。这样,测试工具能够实现向目标端进程转发经过修改的数据包,以满足不同的测试目的,从而提高了测试的灵活性。
    本实施例中,通过接收源端进程通过底层链路发送的数据包,进而将所述数据包发送给数据处理中心,以使得所述数据处理中心根据与测试目的相关的处理逻辑,对所述数据包进行处理,然后,接收所述数据处理中心发送的处理结果信息,使得能够根据所述处理结果信息,执行测试操作,由于数据处理中心能够对源端进程发送的数据包进行处理,因此,能够避免现有技术中只能针对所录制的数据包进行回放的问题,从而提高了测试的灵活性。
    另外,采用本发明提供的技术方案,由于直接将接收到的源端进程发送的数据包发送给数据处理中心进行处理,无需将所述数据包下载下来,在利用其他工具进行修改,无需操作人员参与测试过程,操作简单,且正确率高,从而进一步提高了测试的灵活性,以及测试的效率。
    另外,采用本发明提供的技术方案,由于与测试目的相关的处理逻辑是数据处理中心处理源端进程发送的数据包的处理依据,无需测试用例考虑这些处理逻辑,从而进一步提高了测试的灵活性,以及测试的自动化。
    另外,采用本发明提供的技术方案,由于与测试目的相关的处理逻辑是数据处理中心处理源端进程发送的数据包的处理依据,如果需要修改这些处理逻辑,只需要将修改之后的处理逻辑重新向数据处理中心进行注册即可,无需修改整个测试流程和测试用例,从而进一步提高了测试的灵活性,以及测试的自动化。
    需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和??椴⒉灰欢ㄊ潜痉⒚魉匦氲?。
    在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
    图2为本发明另一实施例提供的基于数据处理的测试装置的结构示意图,如图2所示。本实施例的基于数据处理的测试装置可以包括接收单元21、发送单元22和执行单元23。其中,接收单元21,用于接收源端进程通过底层链路发送的数据包;发送单元22,用于将所述数据包发送给数据处理中心,以使得所述数据处理中心根据与测试目的相关的处理逻辑,对所述数据包进行处理;所述接收单元21,还用于接收所述数据处理中心发送的处理结果信息;执行单元23,用于根据所述处理结果信息,执行测试操作。
    需要说明的是,本实施例提供的测试装置可以为测试工具。
    这样,通过接收单元接收源端进程通过底层链路发送的数据包,进而由发送单元将所述数据包发送给数据处理中心,以使得所述数据处理中心根据与测试目的相关的处理逻辑,对所述数据包进行处理,然后,接收单元接收所述数据处理中心发送的处理结果信息,使得执行单元能够根据所述处理结果信息,执行测试操作,由于数据处理中心能够对源端进程发送的数据包进行处理,因此,能够避免现有技术中只能针对所录制的数据包进行回放的问题,从而提高了测试的灵活性。
    可选地,在本实施例的一个可能的实现方式中,如图3所示,本实施例提供的基于数据处理的测试装置还可以进一步包括注册单元31,用于运行预先配置的脚本文件,以向所述数据处理中心注册所述处理逻辑。
    具体地,所述脚本文件具体可以包括利用Python语言、超级文本预处理(Hypertext Preprocessor,PHP)语言或Ruby语言等面向对象编程语言进行编译的文件。
    具体地,所述处理逻辑,可以理解为至少一个用于处理数据的回调函数。例如,这个回调函数可以是测试工具所在环境中部署的python函数,或者还可以为测试用例所在环境中部署的python函数,等,本实施例对此不进行限定。如果回调函数为测试用例所在环境中部署的python函数,具体可以采用序列化的技术将这个python函数传递到远端的数据处理中心。
    可选地,在本实施例的一个可能的实现方式中,所述发送单元22,还可以进一股用于将所述底层链路的第一状态信息发送给所述数据处理中心,以使得所述数据处理中心接收到所述数据包之后,根据所述底层链路的第一状态信息和所述处理逻辑,对所述数据包进行处理。
    可以理解的是,所述第一状态信息为所述处理逻辑中所涉及的限定条件。具体地,所述第一状态信息可以包括但不限于链路状态信息,本实施例对此不进行限定。例如,总共发生了多少次数据传输、源端进程标识、目标端进程标识和数据包的应用层协议标识等。
    可选地,在本实施例的一个可能的实现方式中,所述数据处理中心还可以进一步通过远程过程调用(Remote Function Call,RPC)接口,获得所述底层链路的第二状态信息。至此,所述数据处理中心在接收到所述数据包之后,则可以根据所述底层链路的第二状态信息和所述处理逻辑,对所述数据包进行处理。
    可以理解的是,所述第二状态信息为所述处理逻辑中所涉及的其他限定条件。具体地,所述第二状态信息可以包括但不限于除了链路状态信息之外的其他状态信息,本实施例对此不进行限定。例如,接管底层链路的总数量、 指定底层链路在全部底层链路中的位置次序和指定底层链路的发生数据修改的总次数等。
    进一步地,所述数据处理中心在接收到所述数据包之后,则可以根据所述底层链路的第一状态信息、所述底层链路的第二状态信息和所述处理逻辑,对所述数据包进行处理。
    可选地,在本实施例的一个可能的实现方式中,假设所述数据处理中心对所述数据包进行修改;相应地,所述处理结果信息可以包括但不限于:
    修改之后的数据包;或者
    修改之后的数据包和修改指示。
    具体地,所述执行单元23,具体可以用于向目标端进程发送所述修改之后的数据包,以实现测试目的。
    可选地,在本实施例的一个可能的实现方式中,假设所述数据处理中心对所述数据包进行检测;相应地,所述处理结果信息可以包括但不限于:
    操作指示;或者
    操作指示和所述数据包。
    具体地,所述执行单元23,具体可以用于根据所述操作指示,执行与所述操作指示对应的操作,例如,关闭所述底层链接或丢弃所述数据包,以实现测试目的。
    为使得本发明实施例提供的方法更加清楚,下面将以现有的能够实现录制和回放的测试工具作为举例。本实施例中,测试工具运行在一个独立的进程即进程A中,测试用例运行另一个不同的进程即进程B中。在接管底层链路的测试工具中嵌入脚本解释器,例如,python解释器(PyInterpreter),以支持脚本文件的运行。测试工具会建立两个套接字(socket)连接,其中的一个socket连接用于在源端进程与测试工具之间传递数据,另一个socket连接用于在测试工具与目标端进程之间传递数据。源端进程有数据包A需要向目标端进程发送。测试工具的详细描述可以参见图1对应的实施例中的相关内容,此处不再赘述。测试工具能够实现向目标端进程转发经过修改的数 据包,以满足不同的测试目的,从而提高了测试的灵活性。
    本实施例中,通过接收单元接收源端进程通过底层链路发送的数据包,进而由发送单元将所述数据包发送给数据处理中心,以使得所述数据处理中心根据与测试目的相关的处理逻辑,对所述数据包进行处理,然后,接收单元接收所述数据处理中心发送的处理结果信息,使得执行单元能够根据所述处理结果信息,执行测试操作,由于数据处理中心能够对源端进程发送的数据包进行处理,因此,能够避免现有技术中只能针对所录制的数据包进行回放的问题,从而提高了测试的灵活性。
    另外,采用本发明提供的技术方案,由于直接将接收到的源端进程发送的数据包发送给数据处理中心进行处理,无需将所述数据包下载下来,在利用其他工具进行修改,无需操作人员参与测试过程,操作简单,且正确率高,从而进一步提高了测试的灵活性,以及测试的效率。
    另外,采用本发明提供的技术方案,由于与测试目的相关的处理逻辑是数据处理中心处理源端进程发送的数据包的处理依据,无需测试用例考虑这些处理逻辑,从而进一步提高了测试的灵活性,以及测试的自动化。
    另外,采用本发明提供的技术方案,由于与测试目的相关的处理逻辑是数据处理中心处理源端进程发送的数据包的处理依据,如果需要修改这些处理逻辑,只需要将修改之后的处理逻辑重新向数据处理中心进行注册即可,无需修改整个测试流程和测试用例,从而进一步提高了测试的灵活性,以及测试的自动化。
    图4为本发明另一实施例提供的基于数据处理的测试系统的结构示意图,如图4所示。本实施例的基于数据处理的测试系统可以包括数据处理中心41和图2对应的实施例和图3对应的实施例中任一实施例所提供的基于数据处理的测试装置42,该基于数据处理的测试装置42的详细描述可以参见图2对应的实施例和图3对应的实施例中任一实施例多的相关内容,此处不再赘述。
    其中,所述数据处理中心41,可以用于接收所述数据包;根据与测试目 的相关的处理逻辑,对所述数据包进行处理;以及,发送所述处理结果信息。
    可选地,在本实施例的一个可能的实现方式中,所述数据处理中心41,还可以进一步用于接收所述底层链路的第一状态信息;相应地,所述数据处理中心41,具体可以用于在接收到所述数据包之后,根据所述底层链路的第一状态信息和所述处理逻辑,对所述数据包进行处理。
    可以理解的是,所述第一状态信息为所述处理逻辑中所涉及的限定条件。具体地,所述第一状态信息可以包括但不限于链路状态信息,本实施例对此不进行限定。例如,总共发生了多少次数据传输、源端进程标识、目标端进程标识和数据包的应用层协议标识等。
    可选地,在本实施例的一个可能的实现方式中,所述数据处理中心41,还可以进一步用于通过RPC接口,获得所述底层链路的第二状态信息;相应地,所述数据处理中心41,具体可以用于在接收到所述数据包之后,根据所述底层链路的第二状态信息和所述处理逻辑,对所述数据包进行处理。
    可以理解的是,所述第二状态信息为所述处理逻辑中所涉及的其他限定条件。具体地,所述第二状态信息可以包括但不限于除了链路状态信息之外的其他状态信息,本实施例对此不进行限定。例如,接管底层链路的总数量、指定底层链路在全部底层链路中的位置次序和指定底层链路的发生数据修改的总次数等。
    进一步地,所述数据处理中心41,具体可以用于在接收到所述数据包之后,根据所述底层链路的第一状态信息、所述底层链路的第二状态信息和所述处理逻辑,对所述数据包进行处理。
    本实施例中,通过基于数据处理的测试装置接收源端进程通过底层链路发送的数据包,进而将所述数据包发送给数据处理中心,以使得所述数据处理中心根据与测试目的相关的处理逻辑,对所述数据包进行处理,然后,所述测试装置接收所述数据处理中心发送的处理结果信息,使得该测试装置能够根据所述处理结果信息,执行测试操作,由于数据处理中心能够对源端进程发送的数据包进行处理,因此,能够避免现有技术中只能针对所录制的数 据包进行回放的问题,从而提高了测试的灵活性。
    另外,采用本发明提供的技术方案,由于直接将接收到的源端进程发送的数据包发送给数据处理中心进行处理,无需将所述数据包下载下来,在利用其他工具进行修改,无需操作人员参与测试过程,操作简单,且正确率高,从而进一步提高了测试的灵活性,以及测试的效率。
    另外,采用本发明提供的技术方案,由于与测试目的相关的处理逻辑是数据处理中心处理源端进程发送的数据包的处理依据,无需测试用例考虑这些处理逻辑,从而进一步提高了测试的灵活性,以及测试的自动化。
    另外,采用本发明提供的技术方案,由于与测试目的相关的处理逻辑是数据处理中心处理源端进程发送的数据包的处理依据,如果需要修改这些处理逻辑,只需要将修改之后的处理逻辑重新向数据处理中心进行注册即可,无需修改整个测试流程和测试用例,从而进一步提高了测试的灵活性,以及测试的自动化。
    所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
    在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
    所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上??梢愿菔导实男枰≡衿渲械牟糠只蛘呷康ピ词迪直臼凳├桨傅哪康?。
    另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
    上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
    最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围?!  ∧谌堇醋宰ɡ鴚ww.www.4mum.com.cn转载请标明出处

    关于本文
    本文标题:基于数据处理的测试方法及装置、系统.pdf
    链接地址://www.4mum.com.cn/p-6111791.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    [email protected] 2017-2018 www.4mum.com.cn网站版权所有
    经营许可证编号:粤ICP备17046363号-1 
     


    收起
    展开
  • 浪潮孙丕恕从信息时代到智能时代 人工智能价值将爆发式释放 2019-12-21
  • 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 天津快乐十分跨度 北京11选5开奖官网 福建时时彩计划 时时彩评测 河南11选5 加拿大三分彩开奖 必赢体育篮球比分球探体育 金砖彩票首页 安徽25选5昨天开奖号码 体彩排列三走势图风采 江西快3哪和网站可以买 两码中特是否是事实 云南十一选五开奖号今天的 金牛线上娱乐平台靠吗 竞彩篮球大小分 上海快3最大遗漏