CN104734912B - 一种协议一致性测试的方法和装置 - Google Patents
一种协议一致性测试的方法和装置 Download PDFInfo
- Publication number
- CN104734912B CN104734912B CN201510080271.7A CN201510080271A CN104734912B CN 104734912 B CN104734912 B CN 104734912B CN 201510080271 A CN201510080271 A CN 201510080271A CN 104734912 B CN104734912 B CN 104734912B
- Authority
- CN
- China
- Prior art keywords
- message
- body structure
- field value
- message body
- received
- 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.)
- Active
Links
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
本申请实施例提供了一种协议一致性测试的方法和装置,其中,所述的方法包括:执行测试用例,所述测试用例中包括接收消息的步骤;当执行到所述接收消息的步骤时,将所接收到的消息与预置的目标消息进行匹配;若所接收到的消息与预置的目标消息不匹配,则针对所接收到的消息进行标记,以及,终止所述测试用例。本申请实施例通过将所接收到的消息与预置的目标消息进行匹配,若所接收到的消息与预置的目标消息不匹配,则针对所接收到的消息进行标记,以及,终止所述测试用例,从而实现对测试用例问题进行精确定位,提高了测试效率。
Description
技术领域
本申请涉及通信技术领域,特别是涉及一种协议一致性测试的方法和一种协议一致性测试的装置。
背景技术
协议是各设备之间进行通信时应遵守的规则,协议一致性测试用来检测所实现的协议实体与协议规范的符合程度。在实际网络中,实体不符合协议不仅影响本身的通信功能,有时还会破坏整个网络的通信行为,从而间接影响其他通信实体的通信,所以通信实体在进入实际网络中必须经过协议一致性认证测试。
协议一致性测试系统(Protocol Conformance Test,PCT)广泛运用于通信协议测试和互联网协议测试,通过自动或手动方式运行预先指定的测试用例实现对被测系统(System Under Test,SUT)的覆盖测试。协议一致性测试系统的应用贯穿于产品研发前期的集成测试、产品趋于稳定的回归测试以及量产阶段的认证测试。协议一致性测试系统的测试用例一般数量较多,不管是手动执行还是自动执行用例,难免有些用例无法测试通过,影响用例测试不通过的因素各式各样,有被测实体本身原因,有环境原因,甚至测试系统本身也可能有问题,这就导致同一用例在不同测试环境下失败原因表现不同,也给问题分析、定位增加了难度。因此,如何快速、精确定位问题就显得尤为重要。
现有的协议一致性测试系统进行测试用例问题定位一般采用手动模式,即在测试用例执行结束后人为参与查看、分析测试Log,首先确认当前已正常执行的流程,然后再确认后续期望的流程及响应消息,最终确定测试用例失败的具体流程及详细信息。协议一致性测试系统测试用例问题定位常规流程如图1所示。现有的测试用例问题定位的方案主要存在以下几点不足:
(1)手动方式,用例执行结束后需要人为参与分析、定位Log,问题定位效率低;
(2)准确性不足,人为方式分析测试Log受限于人员技术、Log完备等各种因素,有时候难于分析出问题的具体原因,甚至得到错误的结论;
(3)测试效率低,测试的最终目的就是发现问题并协助解决问题,测试问题分析效率慢或错误,直接影响问题解决速度,最终导致测试效率低;
(4)测试成本高,人力是研发过程中最大的成本,尤其是专业性较强的人才,人力增加、人员专业性强直接导致成本增加;另外,协议一致性测试系统一般造价较为昂贵,测试效率低间接增加测试资源占用时间,实际上也是增加了测试成本。
因此,目前需要本领域技术人员迫切解决的一个技术问题就是:提供一种协议一致性测试的机制,解决现有的测试用例问题定位的方案中问题定位效率低、准确性不足、专业性要求高的技术问题。
发明内容
本申请实施例所要解决的技术问题是提供一种协议一致性测试方法,用以解决现有的测试用例问题定位的方案中问题定位效率低、准确性不足、专业性要求高的技术问题。
相应的,本申请实施例还提供了一种协议一致性测试装置,用以保证上述方法的实现及应用。
为了解决上述问题,本申请公开了一种协议一致性测试的方法,包括:
执行测试用例,所述测试用例中包括接收消息的步骤;
当执行到所述接收消息的步骤时,将所接收到的消息与预置的目标消息进行匹配;
若所接收到的消息与预置的目标消息不匹配,则针对所接收到的消息进行标记,以及,终止所述测试用例。
优选的,所述的方法,还包括:
若所接收到的消息与预置的目标消息匹配,则继续执行所述测试用例。
优选的,所接收到的消息包括第一消息体结构和第一字段值,所述目标消息包括第二消息体结构和第二字段值;所述当执行到所述接收消息的步骤时,将所接收到的消息与预置的目标消息进行匹配的步骤包括:
当执行到所述接收消息的步骤时,将所述第一消息体结构与第二消息体结构进行匹配;
若所述第一消息体结构与第二消息体结构匹配,则将所述第一字段值与第二字段值进行匹配;
若所述第一字段值与第二字段值匹配,则判定所述接收到的消息与预置的目标消息匹配;
若所述第一消息体结构与第二消息体结构不匹配,或者,所述第一字段值与第二字段值不匹配,则判定所接收到的消息与预置的目标消息不匹配。
优选的,所述将所述第一消息体结构与第二消息体结构进行匹配的子步骤进一步包括:
从所述第一消息体结构中提取第一类型模板,以及,从所述第二消息体结构中提取第二类型模板;
若所述第一类型模板与第二类型模板一致,则判定所述第一消息体结构与第二消息体结构匹配;
若所述第一类型模板与第二类型模板不一致,则判定所述第一消息体结构与第二消息体结构不匹配。
优选的,所述若所接收到的消息与预置的目标消息不匹配,则针对所接收到的消息进行标记,以及,终止所述测试用例的步骤包括:
若所述第一消息体结构与第二消息体结构不匹配,则针对所接收到的消息进行整条突出显示,以及,终止所述测试用例;
若所述第一消息体结构与第二消息体结构匹配,但所述第一字段值与第二字段值不匹配,则针对所接收到的消息进行不匹配字段值的突出显示,并显示所述第二消息体结构和第二字段值,以及,终止所述测试用例。
优选的,所述的方法,还包括:
当执行到所述接收消息的步骤时,突出显示当前接收消息的步骤。
优选的,所述测试用例中还包括发送消息的步骤;所述的方法还包括:
当执行到所述发送消息的步骤时,突出显示当前发送消息的步骤。
为了解决上述问题,本申请还公开了一种协议一致性测试的装置,包括:
测试用例执行模块,用于执行测试用例,所述测试用例中包括接收消息的步骤;
消息匹配模块,用于当执行到所述接收消息的步骤时,将所接收到的消息与预置的目标消息进行匹配;
消息标记模块,用于若所接收到的消息与预置的目标消息不匹配,则针对所接收到的消息进行标记,以及,终止所述测试用例。
优选的,所述的装置,还包括:
执行控制模块,若所接收到的消息与预置的目标消息匹配,则继续执行所述测试用例。
优选的,所接收到的消息包括第一消息体结构和第一字段值,所述目标消息包括第二消息体结构和第二字段值;所述消息匹配模块包括:
消息体结构匹配子模块,用于当执行到所述接收消息的步骤时,将所述第一消息体结构与第二消息体结构进行匹配;若所述第一消息体结构与第二消息体结构匹配,则调用字段值匹配子模块;
字段值匹配子模块,用于将所述第一字段值与第二字段值进行匹配;
第一判定子模块,用于若所述第一字段值与第二字段值匹配,则判定所述接收到的消息与预置的目标消息匹配;
第二判定子模块,用于若所述第一消息体结构与第二消息体结构不匹配,或者,所述第一字段值与第二字段值不匹配,则判定所接收到的消息与预置的目标消息不匹配。
优选的,所述消息体结构匹配子模块进一步包括:
类型模板提取单元,用于从所述第一消息体结构中提取第一类型模板,以及,从所述第二消息体结构中提取第二类型模板;
第一类型模板判定单元,用于若所述第一类型模板与第二类型模板一致,则判定所述第一消息体结构与第二消息体结构匹配;
第二类型模板判定单元,用于若所述第一类型模板与第二类型模板不一致,则判定所述第一消息体结构与第二消息体结构不匹配。
优选的,所述消息标记模块包括:
第一消息标记子模块,用于若所述第一消息体结构与第二消息体结构不匹配,则针对所接收到的消息进行整条突出显示,以及,终止所述测试用例;
第二消息标记子模块,用于若所述第一消息体结构与第二消息体结构匹配,但所述第一字段值与第二字段值不匹配,则针对所接收到的消息进行不匹配字段值的突出显示,并显示所述第二消息体结构和第二字段值,以及,终止所述测试用例。
优选的,所述的装置,还包括:
接收消息突出显示模块,用于当执行到所述接收消息的步骤时,突出显示当前接收消息的步骤。
优选的,所述测试用例中还包括发送消息的步骤,所述的装置还包括:
发送消息突出显示模块,用于当执行到所述发送消息的步骤时,突出显示当前发送消息的步骤。
与现有技术相比,本申请实施例包括以下优点:
首先,本申请实施例在执行到所述接收消息的步骤时,通过将所接收到的消息与预置的目标消息进行匹配,若所接收到的消息与预置的目标消息不匹配,则针对所接收到的消息进行标记,以及,终止所述测试用例,从而实现对测试用例问题进行精确定位,提高了测试效率,而且,通过将所接收到的消息与预置的目标消息进行匹配,最大限度降低了人员参与度,对测试人员专业性需求大大降低,也降低了测试成本。
其次,本申请实施例通过将所接收到的消息与预置的目标消息进行匹配,若所述第一消息体结构与第二消息体结构不匹配,则针对所接收到的消息进行整条突出显示,若所述第一消息体结构与第二消息体结构匹配,但所述第一字段值与第二字段值不匹配,则针对所接收到的消息进行不匹配字段值的突出显示,并显示所述第二消息体结构和第二字段值,从而根据不同的情况,对所接收到的消息进行标记对实测消息进行标记,进一步地实现了对测试用例问题的分析和准确定位,有助于测试人员更加直观地获知测试用例问题,进而提升了用户体验。
附图说明
图1是一种常规的协议一致性测试用例问题定位的步骤流程图;
图2是本申请的一种协议一致性测试方法实施例1的步骤流程图;
图3是本申请的一种协议一致性测试方法实施例2的步骤流程图;
图4是本申请的一种协议一致性测试装置实施例1的结构框图;
图5是本申请的一种协议一致性测试装置实施例2的结构框图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
本申请实施例的核心构思之一在于,当执行到所述接收消息的步骤时,通过将所接收到的消息与预置的目标消息进行匹配,若所接收到的消息与预置的目标消息不匹配,则针对所接收到的消息进行标记,以及,终止所述测试用例,从而实现对测试用例问题进行精确定位。
参照图2,示出了本申请的一种协议一致性测试方法实施例1的步骤流程图,具体可以包括如下步骤:
步骤101,执行测试用例,所述测试用例中包括接收消息的步骤。
测试用例可以是在预设的测试用例集中存储的。测试用例的原始形式可以为测试脚本或者代码。
需要说明的是,接收消息的步骤可以是指被测实体发送、测试系统接收消息的过程,也可以称为上行(Up Link,UL)消息的步骤。具体而言,被测实体可以包括手机、芯片、上网卡、路由终端等,本领域技术人员可以根据实际需要对此进行设置,本申请对此并不进行限制。
在具体实现中,测试用例中的步骤可以具有关键字标识,比如Step1代表第1步,Step2代表第2步;关键字send代表发送消息,关键字recv代表接收消息,等等。本领域技术人员可以根据实际需要对此进行设置,本申请对此并不进行限制。
步骤102,当执行到所述接收消息的步骤时,将所接收到的消息与预置的目标消息进行匹配;
在实际应用中,所接收到的消息可以是指在接收消息的步骤实际接收到的消息。目标消息可以是指在接收消息的步骤期望接收到的消息。目标消息可以是在测试用例中预设,也可以是采取其他可行的方式进行预设。
步骤103,若所接收到的消息与预置的目标消息不匹配,则针对所接收到的消息进行标记,以及,终止所述测试用例。
具体而言,若所接收到的消息与预置的目标消息不匹配,则可以说明测试用例执行有误,而且,测试用例执行的问题就在于所述接收消息的步骤中。因此,可以针对所接收到的消息进行标记,从而准确地定位问题,为后续问题反馈、问题解决提供及时、可靠的信息。
若所接收到的消息与预置的目标消息不匹配,可以判定所述测试用例执行有误,此时继续执行测试用例已无意义,因此,可以终止所述测试用例。
在实际应用中,针对所接收到的消息进行标记可以是以颜色突出显示文本的方式进行标记,也可以是更改消息的字体颜色,或者,对消息的字体加粗、下划线进行标记,还可以采用其它可行的方式对此进行标记。本申请实施例对此并不进行限制。
本申请实施例在执行到所述接收消息的步骤时,通过将所接收到的消息与预置的目标消息进行匹配,若所接收到的消息与预置的目标消息不匹配,则针对所接收到的消息进行标记,以及,终止所述测试用例,从而实现对测试用例问题进行精确定位,提高了测试效率,而且,通过将所接收到的消息与预置的目标消息进行匹配,最大限度降低了人员参与度,对测试人员专业性需求大大降低,也降低了测试成本。
参照图3,示出了本申请的一种协议一致性测试方法实施例2的步骤流程图,具体可以包括如下步骤:
步骤201,执行测试用例,所述测试用例中可以包括接收消息的步骤;
在具体实现中,所述测试用例中还可以包括发送消息的步骤。
具体而言,当执行到所述接收消息的步骤时,可以突出显示当前接收消息的步骤,当执行到所述发送消息的步骤时,可以突出显示当前发送消息的步骤。
步骤202,当执行到所述接收消息的步骤时,将所接收到的消息与预置的目标消息进行匹配;
在具体实现中,所接收到的消息可以包括第一消息体结构和第一字段值,所述目标消息可以包括第二消息体结构和第二字段值。消息体结构可以是指消息中字段的类型。字段值可以是指消息中字段具体的值。
在本申请实施例中,所述步骤202可以包括如下子步骤:
子步骤202a,当执行到所述接收消息的步骤时,将所述第一消息体结构与第二消息体结构进行匹配;
在本申请的一种优选实施例中,所述子步骤202a可以进一步包括如下子步骤:
子步骤S1,从所述第一消息体结构中提取第一类型模板,以及,从所述第二消息体结构中提取第二类型模板;
需要说明的是,类型模板可以是指对一批仅仅成员数据类型不同的类的抽象,程序员只要为这一批类所组成的整个类家族创建一个类模板,给出一套程序代码,就可以用来生成多种具体的类,从而大大提高编程的效率。
在具体实现中,可以通过接收消息中的Opcode指令唯一确定消息类型。
子步骤S2,若所述第一类型模板与第二类型模板一致,则判定所述第一消息体结构与第二消息体结构匹配;
子步骤S3,若所述第一类型模板与第二类型模板不一致,则判定所述第一消息体结构与第二消息体结构不匹配。
子步骤202b,若所述第一消息体结构与第二消息体结构匹配,则将所述第一字段值与第二字段值进行匹配;
子步骤202c,若所述第一字段值与第二字段值匹配,则判定所述接收到的消息与预置的目标消息匹配;
子步骤202d,若所述第一消息体结构与第二消息体结构不匹配,或者,所述第一字段值与第二字段值不匹配,则判定所接收到的消息与预置的目标消息不匹配。
步骤203,若所接收到的消息与预置的目标消息不匹配,则针对所接收到的消息进行标记,以及,终止所述测试用例。
在具体实现中,所述步骤203的步骤可以包括如下子步骤:
子步骤203a,若所述第一消息体结构与第二消息体结构不匹配,则针对所接收到的消息进行整条突出显示,以及,终止所述测试用例;
子步骤203b,若所述第一消息体结构与第二消息体结构匹配,但所述第一字段值与第二字段值不匹配,则针对所接收到的消息进行不匹配字段值的突出显示,并显示所述第二消息体结构和第二字段值,以及,终止所述测试用例。
具体而言,由于消息体结构的不匹配会导致消息的整体存在差异,因此,若所接收到的消息与预置的目标消息不匹配,针对所接收到的消息进行整条突出显示,是对测试用例问题的精确定位。若所述第一消息体结构与第二消息体结构匹配,但所述第一字段值与第二字段值不匹配,则说明所接收到的消息与预置的目标消息不匹配是由于字段值不匹配造成的,因此,针对所接收到的消息进行不匹配字段值的突出显示,从而,达到对测试用例问题的精确定位。
在实际应用中,针对所接收到的消息不匹配的字段值可以采用红色字体高亮显示进行标记。
步骤204,若所接收到的消息与预置的目标消息匹配,则继续执行所述测试用例。
在实际应用中,若所接收到的消息与预置的目标消息匹配,则说明接收消息的步骤并没有出现问题,可以继续执行所述测试用例,当执行接收消息的步骤时,再次触发将所接收到的消息与预置的目标消息进行匹配。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请实施例所必须的。
参照图4,示出了本申请一种协议一致性测试的装置实施例1的结构框图,具体可以包括如下模块:
测试用例执行模块301,用于执行测试用例,所述测试用例中包括接收消息的步骤;
消息匹配模块302,用于当执行到所述接收消息的步骤时,将所接收到的消息与预置的目标消息进行匹配;
消息标记模块303,用于若所接收到的消息与预置的目标消息不匹配,则针对所接收到的消息进行标记,以及,终止所述测试用例。
参照图5,示出了本申请一种协议一致性测试的装置实施例2的结构框图,具体可以包括如下模块:
测试用例执行模块401,用于执行测试用例,所述测试用例中包括接收消息的步骤;
在具体实现中,所述测试用例中可以还包括发送消息的步骤。
消息匹配模块402,用于当执行到所述接收消息的步骤时,将所接收到的消息与预置的目标消息进行匹配;
在实际应用中,所接收到的消息可以包括第一消息体结构和第一字段值,所述目标消息可以包括第二消息体结构和第二字段值。
在本申请实施例中,所述消息匹配模块402可以包括如下子模块:
消息体结构匹配子模块402a,用于当执行到所述接收消息的步骤时,将所述第一消息体结构与第二消息体结构进行匹配;若所述第一消息体结构与第二消息体结构匹配,则调用字段值匹配子模块;
在本申请的一种优选实施例中,所述消息体结构匹配子模块402a可以进一步包括如下单元:
类型模板提取单元,用于从所述第一消息体结构中提取第一类型模板,以及,从所述第二消息体结构中提取第二类型模板;
第一类型模板判定单元,用于若所述第一类型模板与第二类型模板一致,则判定所述第一消息体结构与第二消息体结构匹配;
第二类型模板判定单元,用于若所述第一类型模板与第二类型模板不一致,则判定所述第一消息体结构与第二消息体结构不匹配。
字段值匹配子模块402b,用于将所述第一字段值与第二字段值进行匹配;
第一判定子模块402c,用于若所述第一字段值与第二字段值匹配,则判定所述接收到的消息与预置的目标消息匹配;
第二判定子模块402d,用于若所述第一消息体结构与第二消息体结构不匹配,或者,所述第一字段值与第二字段值不匹配,则判定所接收到的消息与预置的目标消息不匹配。
消息标记模块403,用于若所接收到的消息与预置的目标消息不匹配,则针对所接收到的消息进行标记,以及,终止所述测试用例。
在本申请的一种优选实施例中,所述消息标记模块403可以包括如下子模块:
第一消息标记子模块,用于若所述第一消息体结构与第二消息体结构不匹配,则针对所接收到的消息进行整条突出显示,以及,终止所述测试用例;
第二消息标记子模块,用于若所述第一消息体结构与第二消息体结构匹配,但所述第一字段值与第二字段值不匹配,则针对所接收到的消息进行不匹配字段值的突出显示,并显示所述第二消息体结构和第二字段值,以及,终止所述测试用例。
执行控制模块404,若所接收到的消息与预置的目标消息匹配,则继续执行所述测试用例。
在本申请的一种优选实施例中,所述的装置,还可以包括如下模块:
接收消息突出显示模块405,用于当执行到所述接收消息的步骤时,突出显示当前接收消息的步骤。
在本申请的一种优选实施例中,所述的装置,还可以包括如下模块:
发送消息突出显示模块,用于当执行到所述发送消息的步骤时,突出显示当前发送消息的步骤。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本申请实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
在一个典型的配置中,所述计算机设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非持续性的电脑可读媒体(transitory media),如调制的数据信号和载波。
本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本申请所提供的一种协议一致性测试方法和一种协议一致性测试装置,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (12)
1.一种协议一致性测试的方法,其特征在于,所接收到的消息包括第一消息体结构和第一字段值,目标消息包括第二消息体结构和第二字段值,所述方法包括:
执行测试用例,所述测试用例中包括接收消息的步骤;
当执行到所述接收消息的步骤时,将所述第一消息体结构与第二消息体结构进行匹配;其中,消息体结构为消息中字段的类型;
若所述第一消息体结构与第二消息体结构匹配,则将所述第一字段值与第二字段值进行匹配;
若所述第一字段值与第二字段值匹配,则判定所述接收到的消息与预置的目标消息匹配;
若所述第一消息体结构与第二消息体结构不匹配,或者,所述第一字段值与第二字段值不匹配,则判定所接收到的消息与预置的目标消息不匹配;
若所接收到的消息与预置的目标消息不匹配,则针对所接收到的消息进行标记,以及,终止所述测试用例。
2.根据权利要求1所述的方法,其特征在于,还包括:
若所接收到的消息与预置的目标消息匹配,则继续执行所述测试用例。
3.根据权利要求1所述的方法,其特征在于,所述将所述第一消息体结构与第二消息体结构进行匹配的子步骤进一步包括:
从所述第一消息体结构中提取第一类型模板,以及,从所述第二消息体结构中提取第二类型模板;
若所述第一类型模板与第二类型模板一致,则判定所述第一消息体结构与第二消息体结构匹配;
若所述第一类型模板与第二类型模板不一致,则判定所述第一消息体结构与第二消息体结构不匹配。
4.根据权利要求1或3所述的方法,其特征在于,所述若所接收到的消息与预置的目标消息不匹配,则针对所接收到的消息进行标记,以及,终止所述测试用例的步骤包括:
若所述第一消息体结构与第二消息体结构不匹配,则针对所接收到的消息进行整条突出显示,以及,终止所述测试用例;
若所述第一消息体结构与第二消息体结构匹配,但所述第一字段值与第二字段值不匹配,则针对所接收到的消息进行不匹配字段值的突出显示,并显示所述第二消息体结构和第二字段值,以及,终止所述测试用例。
5.根据权利要求1、2或3所述的方法,其特征在于,还包括:
当执行到所述接收消息的步骤时,突出显示当前接收消息的步骤。
6.根据权利要求5所述的方法,其特征在于,所述测试用例中还包括发送消息的步骤;所述的方法还包括:
当执行到所述发送消息的步骤时,突出显示当前发送消息的步骤。
7.一种协议一致性测试的装置,其特征在于,所接收到的消息包括第一消息体结构和第一字段值,目标消息包括第二消息体结构和第二字段值,所述装置包括:
测试用例执行模块,用于执行测试用例,所述测试用例中包括接收消息的步骤;
消息匹配模块,用于当执行到所述接收消息的步骤时,将所接收到的消息与预置的目标消息进行匹配;其中,所述消息匹配模块包括:
消息体结构匹配子模块,用于当执行到所述接收消息的步骤时,将所述第一消息体结构与第二消息体结构进行匹配;若所述第一消息体结构与第二消息体结构匹配,则调用字段值匹配子模块;其中,消息体结构为消息中字段的类型;
字段值匹配子模块,用于将所述第一字段值与第二字段值进行匹配;
第一判定子模块,用于若所述第一字段值与第二字段值匹配,则判定所述接收到的消息与预置的目标消息匹配;
第二判定子模块,用于若所述第一消息体结构与第二消息体结构不匹配,或者,所述第一字段值与第二字段值不匹配,则判定所接收到的消息与预置的目标消息不匹配;
消息标记模块,用于若所接收到的消息与预置的目标消息不匹配,则针对所接收到的消息进行标记,以及,终止所述测试用例。
8.根据权利要求7所述的装置,其特征在于,还包括:
执行控制模块,若所接收到的消息与预置的目标消息匹配,则继续执行所述测试用例。
9.根据权利要求7所述的装置,其特征在于,所述消息体结构匹配子模块进一步包括:
类型模板提取单元,用于从所述第一消息体结构中提取第一类型模板,以及,从所述第二消息体结构中提取第二类型模板;
第一类型模板判定单元,用于若所述第一类型模板与第二类型模板一致,则判定所述第一消息体结构与第二消息体结构匹配;
第二类型模板判定单元,用于若所述第一类型模板与第二类型模板不一致,则判定所述第一消息体结构与第二消息体结构不匹配。
10.根据权利要求7或9所述的装置,其特征在于,所述消息标记模块包括:
第一消息标记子模块,用于若所述第一消息体结构与第二消息体结构不匹配,则针对所接收到的消息进行整条突出显示,以及,终止所述测试用例;
第二消息标记子模块,用于若所述第一消息体结构与第二消息体结构匹配,但所述第一字段值与第二字段值不匹配,则针对所接收到的消息进行不匹配字段值的突出显示,并显示所述第二消息体结构和第二字段值,以及,终止所述测试用例。
11.根据权利要求7、8或9所述的装置,其特征在于,还包括:
接收消息突出显示模块,用于当执行到所述接收消息的步骤时,突出显示当前接收消息的步骤。
12.根据权利要求11所述的装置,其特征在于,所述测试用例中还包括发送消息的步骤,所述的装置还包括:
发送消息突出显示模块,用于当执行到所述发送消息的步骤时,突出显示当前发送消息的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510080271.7A CN104734912B (zh) | 2015-02-13 | 2015-02-13 | 一种协议一致性测试的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510080271.7A CN104734912B (zh) | 2015-02-13 | 2015-02-13 | 一种协议一致性测试的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104734912A CN104734912A (zh) | 2015-06-24 |
CN104734912B true CN104734912B (zh) | 2018-12-18 |
Family
ID=53458366
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510080271.7A Active CN104734912B (zh) | 2015-02-13 | 2015-02-13 | 一种协议一致性测试的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104734912B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112235205B (zh) * | 2020-09-21 | 2022-07-01 | 珠海市卓轩科技有限公司 | 一种发送和消费mq消息的方法、装置及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1755643A (zh) * | 2004-09-27 | 2006-04-05 | 华为技术有限公司 | 一种软件测试的方法 |
WO2007065321A1 (fr) * | 2005-12-08 | 2007-06-14 | China Mobile Communications Corporation | Dispositif de test de conformite a un protocole et procede associe |
CN101867501A (zh) * | 2010-05-25 | 2010-10-20 | 北京宜富泰网络测试实验室有限公司 | Snmp接口信息模型一致性自动化测试方法及系统 |
CN103152216A (zh) * | 2011-12-07 | 2013-06-12 | 北京新媒传信科技有限公司 | 一种互联网中系统的测试方法和装置 |
CN103186467A (zh) * | 2011-12-31 | 2013-07-03 | 北京新媒传信科技有限公司 | 数据正确性验证方法及装置 |
-
2015
- 2015-02-13 CN CN201510080271.7A patent/CN104734912B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1755643A (zh) * | 2004-09-27 | 2006-04-05 | 华为技术有限公司 | 一种软件测试的方法 |
WO2007065321A1 (fr) * | 2005-12-08 | 2007-06-14 | China Mobile Communications Corporation | Dispositif de test de conformite a un protocole et procede associe |
CN101867501A (zh) * | 2010-05-25 | 2010-10-20 | 北京宜富泰网络测试实验室有限公司 | Snmp接口信息模型一致性自动化测试方法及系统 |
CN103152216A (zh) * | 2011-12-07 | 2013-06-12 | 北京新媒传信科技有限公司 | 一种互联网中系统的测试方法和装置 |
CN103186467A (zh) * | 2011-12-31 | 2013-07-03 | 北京新媒传信科技有限公司 | 数据正确性验证方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104734912A (zh) | 2015-06-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110414242B (zh) | 用于检测业务逻辑漏洞的方法、装置、设备及介质 | |
CN108427646B (zh) | 基于Appium的安卓App自动化测试框架构建方法和装置 | |
CN104636254B (zh) | 生成测试用例的方法和装置、测试方法和设备 | |
CN105373478B (zh) | 自动化测试方法和系统 | |
US20160224453A1 (en) | Monitoring the quality of software systems | |
CN109684188B (zh) | 测试方法和装置 | |
CN109976995B (zh) | 用于测试的方法和装置 | |
CN110347085A (zh) | 自动化测试系统、方法、车辆以及计算机可读介质 | |
CN105468524A (zh) | Web接口的自动化测试方法及系统 | |
CN107085554A (zh) | 一种添加控件标识的方法和装置 | |
CN114564390A (zh) | 应用程序的性能测试方法、装置、设备及产品 | |
CN104734912B (zh) | 一种协议一致性测试的方法和装置 | |
CN113515462B (zh) | 用于测试的方法、装置、设备以及存储介质 | |
CN112242136B (zh) | 提高会话模型的测试覆盖 | |
CN116776788B (zh) | 上下文切换验证方法及装置 | |
CN108156045B (zh) | 一种软件定义分组传送网络sptn测试系统及方法 | |
CN112527678A (zh) | 用于测试协议的方法、装置、设备以及存储介质 | |
CN111506305B (zh) | 工具包生成方法、装置、计算机设备及可读存储介质 | |
CN115481594B (zh) | 计分板实现方法、计分板、电子设备及存储介质 | |
CN109815121A (zh) | 接口自动化测试用例生成方法及相关设备 | |
CN109818833B (zh) | 一种以太网测试系统和以太网测试方法 | |
CN114297380A (zh) | 一种数据处理方法、装置、设备及存储介质 | |
CN112286792A (zh) | 一种接口测试方法、装置、设备和存储介质 | |
CN113645052A (zh) | 一种固件调试方法及相关设备 | |
CN110377463A (zh) | 接口测试方法、装置、终端及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |