CN105337801A - 一种适用于交换机协议的基于状态机的测试用例设计方法 - Google Patents
一种适用于交换机协议的基于状态机的测试用例设计方法 Download PDFInfo
- Publication number
- CN105337801A CN105337801A CN201510758062.3A CN201510758062A CN105337801A CN 105337801 A CN105337801 A CN 105337801A CN 201510758062 A CN201510758062 A CN 201510758062A CN 105337801 A CN105337801 A CN 105337801A
- Authority
- CN
- China
- Prior art keywords
- state
- switch
- protocol
- path
- send
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种适用于交换机协议的基于状态机的测试用例设计方法,通过交换机协议中的一个功能点判断待设计的交换机协议是否属于状态迁移类,如果是则列出所述功能点邻近的所有状态,分析状态的转换关系,确定起点和终点,得出状态迁移图;列出所述状态迁移图的主状态路径及所有的独立状态路径分支,所述独立状态路径分支与主状态路径组成N条状态转换路径,所述状态迁移图中每条状态转换路径至少执行一次;该适用于交换机协议的基于状态机的测试用例设计方法适合交换机的大部分协议、能分析出详细的状态转换路径、防止漏测、避免用例冗余、提高了用例覆盖率。
Description
技术领域
本发明涉及通信测试技术领域,尤其涉及一种适用于交换机协议的基于状态机的测试用例设计方法。
背景技术
随着交换机在工业与生活中的广泛应用,交换机在研发阶段都严格的测试,以达到贴近产品的内部应该,实现产品的功能,但是,目前交换机很多测试用例设计方法都是根据等价类划分、组合设计、正交设计法及场景设计法等,但没有一种好的贴合交换机状态迁移类协议的测试用例设计方法。
因此,本领域的技术人员一直致力于研究一种适合交换机的大部分协议、能分析出详细的状态转换路径、防止漏测、避免用例冗余、提高了用例覆盖率的适用于交换机协议的基于状态机的测试用例设计方法。
发明内容
本发明要解决的技术问题是提供一种适用于交换机协议的基于状态机的测试用例设计方法,该适用于交换机协议的基于状态机的测试用例设计方法适合交换机的大部分协议、能分析出详细的状态转换路径、防止漏测、避免用例冗余、提高了用例覆盖率。
为解决上述技术问题,本发明提供的一种适用于交换机协议的基于状态机的测试用例设计方法:提供数据发送仪器及交换机,所述交换机的一端口使能了一种数据接收与发送协议,所述适用于交换机协议的基于状态机的用例设计方法包括以下步骤:
S1:根据状态机模型的判断标准,通过交换机协议中的一个功能点判断待设计的交换机协议是否属于状态迁移类,如果是则执行步骤S2,否则执行步骤S7;
S2:列出所述功能点邻近的所有状态,分析状态的转换关系,确定起点和终点,得出状态迁移图;
S3:列出所述状态迁移图的主状态路径及所有的独立状态路径分支,所述独立状态路径分支与主状态路径组成N条状态转换路径,所述状态迁移图中每条状态转换路径至少执行一次;
S4:得出所述数据发送仪器逐次向所述交换机发送特定类型的报文或不发送数据,交换机的所述端口通过所述数据接收与发送协议向外发送设定报文时,所述端口的数据接收与发送协议邻居状态的预期结果;
S5:根据N条所述的状态转换路径,然后在每条状态转换路径中重复步骤S4,得出所述数据发送仪器依次发送对应状态的报文给所述交换机时,执行对应所述状态转换路径所述端口持续的数据接收与发送协议邻居状态的预期结果;
S6:根据步骤S5设置的数据发送仪器及交换机的动作、报文类型及预期结果,写出每条状态转换路径对应的测试用例;
S7:设计方法终止。
优选地,所述步骤S3的实现步骤包括:
S301:在所述状态迁移图中标出每个执行步骤的序号;
S302:找出主状态路径中的判断节点,在判断节点处找出新独立状态路径分支;
S303:将每一条独立路径分支形成一条独立路径,主干路径及独立路径分支形成N条状态转换路径;
S304:将N条状态转换路径全部列出,流程图中每条状态转换路径至少执行一次。
优选地,所述步骤S4的实现步骤包括:
S401:设定每个所述数据接收与发送协议邻居状态对应的报文类型;
S402:假设所述数据发送仪器逐次向所述交换机发送特定类型的报文或不发送数据,交换机的所述端口根据所述数据接收与发送协议向外发送设定报文;
S403:得出所述端口的数据接收与发送协议邻居状态的预期结果。
优选地,所述数据接收与发送协议为OSPF协议。
优选地,所述状态机模型的判断标准为:输出由当前的输入和当前被测对象的状态共同决定;当前的状态由过去的输入决定,是上一步输出的反映;输出受输入顺序的影响。
采用上述方法之后,根据状态机模型的判断标准,通过交换机协议中的一个功能点判断待设计的交换机协议是否属于状态迁移类,如果是则列出所述功能点邻近的所有状态,分析状态的转换关系,确定起点和终点,得出状态迁移图;列出所述状态迁移图的主状态路径及所有的独立状态路径分支,所述独立状态路径分支与主状态路径组成N条状态转换路径,所述状态迁移图中每条状态转换路径至少执行一次;该适用于交换机协议的基于状态机的测试用例设计方法适合交换机的大部分协议、能分析出详细的状态转换路径、防止漏测、避免用例冗余、提高了用例覆盖率。
附图说明
图1为本发明一种适用于交换机协议的基于状态机的测试用例设计方法的工作流程图;
图2为如图1所示工作流程图的步骤S3的实现流程图;
图3为如图1所示工作流程图的步骤S4的实现流程图;
图4为本实施例交换机协议的状态迁移图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用于解释本发明,并不用于限定本发明。
请参阅图1,图1为本发明一种适用于交换机协议的基于状态机的测试用例设计方法的工作流程图;
在本实施例中,一种适用于交换机协议的基于状态机的测试用例设计方法:提供数据发送仪器及交换机,所述交换机的一端口使能了一种数据接收与发送协议,所述适用于交换机协议的基于状态机的用例设计方法包括以下步骤:
S1:根据状态机模型的判断标准,通过交换机协议中的一个功能点判断待设计的交换机协议是否属于状态迁移类,如果是则执行步骤S2,否则执行步骤S7;
S2:列出所述功能点邻近的所有状态,分析状态的转换关系,确定起点和终点,得出状态迁移图;
S3:列出所述状态迁移图的主状态路径及所有的独立状态路径分支,所述独立状态路径分支与主状态路径组成N条状态转换路径,所述状态迁移图中每条状态转换路径至少执行一次;
S4:得出所述数据发送仪器逐次向所述交换机发送特定类型的报文或不发送数据,交换机的所述端口通过所述数据接收与发送协议向外发送设定报文时,所述端口的数据接收与发送协议邻居状态的预期结果;
S5:根据N条所述的状态转换路径,然后在每条状态转换路径中重复步骤S4,得出所述数据发送仪器依次发送对应状态的报文给所述交换机时,执行对应所述状态转换路径所述端口持续的数据接收与发送协议邻居状态的预期结果;
S6:根据步骤S5设置的数据发送仪器及交换机的动作、报文类型及预期结果,写出每条状态转换路径对应的测试用例;
S7:设计方法终止。
请再参阅图2,图2为如图1所示工作流程图的步骤S3的实现流程图;
所述步骤S3的实现步骤包括:
S301:在所述状态迁移图中标出每个执行步骤的序号;
S302:找出主状态路径中的判断节点,在判断节点处找出新独立状态路径分支;
S303:将每一条独立路径分支形成一条独立路径,主干路径及独立路径分支形成N条状态转换路径;
S304:将N条状态转换路径全部列出,流程图中每条状态转换路径至少执行一次。
请参阅图3,图3为如图1所示工作流程图的步骤S4的实现流程图。所述步骤S4的实现步骤包括:
S401:设定每个所述数据接收与发送协议邻居状态对应的报文类型;
S402:假设所述数据发送仪器逐次向所述交换机发送特定类型的报文或不发送数据,交换机的所述端口根据所述数据接收与发送协议向外发送设定报文;
S403:得出所述端口的数据接收与发送协议邻居状态的预期结果。
在本实施例中优先的数据接收与发送协议为OSPF协议,在其他实施例中,也可以是其他类型的数据接收与发送协议。OSPF对于规模巨大的网络,通常将网络划分成多个OSPF区域,并只要求路由器与同一区域的路由器交换链路状态,而在区域边界路由器上交换区域内的汇总链路状态,这样可以减少传播的信息量,且使最短路径计算强度减少。
在本实施例中,所述状态机模型的判断标准为:
(1)输出由当前的输入和当前被测对象的状态共同决定;
(2)当前的状态由过去的输入决定,是上一步输出的反映;
(3)输出受输入顺序的影响。
在本实施例中,以交换机做为测试对像,交换机协议的状态迁移图如图4所示,根据步骤S3列出所有的状态转换路径:
Down->attempt->init->2-way->exstart->exchange->full
Down->attempt->init->2-way->exstart->exchange->loading->full
Down->init->2-way->exstart->exchange->full
Down->init->2-way->exstart->exchange->loading->full
根据步骤S5设置的数据发送仪器及交换机的动作、报文类型及预期结果,写出每条状态转换路径对应的测试用例,测试用例及预期结果如下所示:
用例1
输入:交换机端口1配置OSPF使能,但是不连接设备或仪表。
预期结果:查询端口1的ospf邻居状态,状态为down。
用例2
输入:交换机端口1配置OSPF使能,NBMA网络类型,连接仪表端口,仪表不发送报文,交换机不停发送Hello报文。
预期结果:查询端口1的ospf邻居状态,状态为attempt。
用例3
输入:交换机端口1配置ospf使能,连接仪表端口。仪表发送Hello报文给交换机,该hello报文不包含交换机的router-id。
预期结果:查询端口1的ospf邻居状态,状态为init。
用例4
输入:交换机端口1配置ospf使能,连接仪表端口。仪表发送Hello报文给交换机,该hello报文包含交换机的router-id。
预期结果:查询端口1的ospf邻居状态,状态为2-way。
用例5
输入:交换机端口1配置ospf使能,连接仪表端口。仪表发送DD报文给交换机,确定序列号。
预期结果:查询端口1的ospf邻居状态,状态为exstart。
用例6
输入:交换机端口1配置ospf使能,连接仪表端口。仪表发送LSDB报文给交换机,确定序列号。
预期结果:查询端口1的ospf邻居状态,状态为exchange。
用例7
输入:交换机端口1配置ospf使能,连接仪表端口。交换机发送LSR报文,仪表发送LSU报文给交换机。
预期结果:查询端口1的ospf邻居状态,状态为loading。
用例8输入:交换机端口1配置ospf使能,连接仪表端口。交换机发送LSR报文,仪表发送LSU报文给交换机,交换机发送LSAck报文。
预期结果:查询端口1的ospf邻居状态,状态为full。
用例9
输入:交换机端口1配置ospf使能,连接仪表端口。仪表依次发送用例1至8的报文给交换机。
预期结果:持续查询端口1的ospf邻居状态,状态依次为Down,attempt,init,2-way,exstart,exchange,loading,full。
采用上述方法之后,根据状态机模型的判断标准,通过交换机协议中的一个功能点判断待设计的交换机协议是否属于状态迁移类,如果是则列出所述功能点邻近的所有状态,分析状态的转换关系,确定起点和终点,得出状态迁移图;列出所述状态迁移图的主状态路径及所有的独立状态路径分支,所述独立状态路径分支与主状态路径组成N条状态转换路径,所述状态迁移图中每条状态转换路径至少执行一次,根据设置的数据发送仪器及交换机的动作、报文类型及预期结果,写出每条状态转换路径对应的测试用例,该适用于交换机协议的基于状态机的测试用例设计方法适合交换机的大部分协议、能分析出详细的状态转换路径、防止漏测、避免用例冗余、提高了用例覆盖率。
应当理解的是,以上仅为本发明的优选实施例,不能因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (5)
1.一种适用于交换机协议的基于状态机的测试用例设计方法,其特征在于:提供数据发送仪器及交换机,所述交换机的一端口使能了一种数据接收与发送协议,所述适用于交换机协议的基于状态机的用例设计方法包括以下步骤:
S1:根据状态机模型的判断标准,通过交换机协议中的一个功能点判断待设计的交换机协议是否属于状态迁移类,如果是则执行步骤S2,否则执行步骤S7;
S2:列出所述功能点邻近的所有状态,分析状态的转换关系,确定起点和终点,得出状态迁移图;
S3:列出所述状态迁移图的主状态路径及所有的独立状态路径分支,所述独立状态路径分支与主状态路径组成N条状态转换路径,所述状态迁移图中每条状态转换路径至少执行一次;
S4:得出所述数据发送仪器逐次向所述交换机发送特定类型的报文或不发送数据,交换机的所述端口通过所述数据接收与发送协议向外发送设定报文时,所述端口的数据接收与发送协议邻居状态的预期结果;
S5:根据N条所述的状态转换路径,然后在每条状态转换路径中重复步骤S4,得出所述数据发送仪器依次发送对应状态的报文给所述交换机时,执行对应所述状态转换路径所述端口持续的数据接收与发送协议邻居状态的预期结果;
S6:根据步骤S5设置的数据发送仪器及交换机的动作、报文类型及预期结果,写出每条状态转换路径对应的测试用例;
S7:设计方法终止。
2.根据权利要求1所述的适用于交换机协议的基于状态机的测试用例设计方法,其特征在于:所述步骤S3的实现步骤包括:
S301:在所述状态迁移图中标出每个执行步骤的序号;
S302:找出主状态路径中的判断节点,在判断节点处找出新独立状态路径分支;
S303:将每一条独立路径分支形成一条独立路径,主干路径及独立路径分支形成N条状态转换路径;
S304:将N条状态转换路径全部列出,流程图中每条状态转换路径至少执行一次。
3.根据权利要求1所述的适用于交换机协议的基于状态机的测试用例设计方法,其特征在于:所述步骤S4的实现步骤包括:
S401:设定每个所述数据接收与发送协议邻居状态对应的报文类型;
S402:假设所述数据发送仪器逐次向所述交换机发送特定类型的报文或不发送数据,交换机的所述端口根据所述数据接收与发送协议向外发送设定报文;
S403:得出所述端口的数据接收与发送协议邻居状态的预期结果。
4.根据权利要求1至4任一所述的适用于交换机协议的基于状态机的测试用例设计方法,其特征在于:所述数据接收与发送协议为OSPF协议。
5.根据权利要求1至4任一所述的适用于交换机协议的基于状态机的测试用例设计方法,其特征在于:所述状态机模型的判断标准为:输出由当前的输入和当前被测对象的状态共同决定;当前的状态由过去的输入决定,是上一步输出的反映;输出受输入顺序的影响。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510758062.3A CN105337801B (zh) | 2015-11-10 | 2015-11-10 | 一种适用于交换机协议的基于状态机的测试用例设计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510758062.3A CN105337801B (zh) | 2015-11-10 | 2015-11-10 | 一种适用于交换机协议的基于状态机的测试用例设计方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105337801A true CN105337801A (zh) | 2016-02-17 |
CN105337801B CN105337801B (zh) | 2018-07-31 |
Family
ID=55288113
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510758062.3A Expired - Fee Related CN105337801B (zh) | 2015-11-10 | 2015-11-10 | 一种适用于交换机协议的基于状态机的测试用例设计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105337801B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108038060A (zh) * | 2017-12-28 | 2018-05-15 | 上海璞恒新能源科技有限公司 | 一种测试方法、装置、终端及计算机可读介质 |
CN109446146A (zh) * | 2018-11-09 | 2019-03-08 | 中国科学院长春光学精密机械与物理研究所 | 一种应用层通信协议的状态转换序列生成方法 |
CN114385475A (zh) * | 2020-10-16 | 2022-04-22 | 腾讯科技(深圳)有限公司 | 一种测试方法和相关装置 |
CN115225557A (zh) * | 2022-07-07 | 2022-10-21 | 上海东土致远智能科技发展有限公司 | 设备测试用例的生成方法及装置、设备测试方法和设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1525662A (zh) * | 2003-02-26 | 2004-09-01 | 华为技术有限公司 | 一种复用段保护协议的测试方法 |
CN101692642A (zh) * | 2009-10-12 | 2010-04-07 | 哈尔滨工程大学 | 基于交换层树形网络的多子网拓扑发现装置及发现方法 |
US20130218550A1 (en) * | 2012-02-22 | 2013-08-22 | International Business Machines Corporation | Acceleration of memory walking sequences during simulation |
CN104243243A (zh) * | 2014-10-14 | 2014-12-24 | 清华大学 | 一种用于生成协议测试序列的方法 |
US20150242380A1 (en) * | 2014-02-27 | 2015-08-27 | International Business Machines Corporation | Checking testing coverage |
-
2015
- 2015-11-10 CN CN201510758062.3A patent/CN105337801B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1525662A (zh) * | 2003-02-26 | 2004-09-01 | 华为技术有限公司 | 一种复用段保护协议的测试方法 |
CN101692642A (zh) * | 2009-10-12 | 2010-04-07 | 哈尔滨工程大学 | 基于交换层树形网络的多子网拓扑发现装置及发现方法 |
US20130218550A1 (en) * | 2012-02-22 | 2013-08-22 | International Business Machines Corporation | Acceleration of memory walking sequences during simulation |
US20150242380A1 (en) * | 2014-02-27 | 2015-08-27 | International Business Machines Corporation | Checking testing coverage |
CN104243243A (zh) * | 2014-10-14 | 2014-12-24 | 清华大学 | 一种用于生成协议测试序列的方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108038060A (zh) * | 2017-12-28 | 2018-05-15 | 上海璞恒新能源科技有限公司 | 一种测试方法、装置、终端及计算机可读介质 |
CN109446146A (zh) * | 2018-11-09 | 2019-03-08 | 中国科学院长春光学精密机械与物理研究所 | 一种应用层通信协议的状态转换序列生成方法 |
CN114385475A (zh) * | 2020-10-16 | 2022-04-22 | 腾讯科技(深圳)有限公司 | 一种测试方法和相关装置 |
CN115225557A (zh) * | 2022-07-07 | 2022-10-21 | 上海东土致远智能科技发展有限公司 | 设备测试用例的生成方法及装置、设备测试方法和设备 |
Also Published As
Publication number | Publication date |
---|---|
CN105337801B (zh) | 2018-07-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8451744B2 (en) | Partitioning directed acyclic graph (DAG) topologies | |
CN103220218B (zh) | 纵向堆叠组网中防止环路的方法和装置 | |
US20140355477A1 (en) | System and method for configuration of link aggregation groups | |
US9712433B2 (en) | Maintaining and communicating nodal neighboring information | |
CN107547249A (zh) | 链路切换方法、装置、sdn交换机、控制器及存储介质 | |
CN105337801A (zh) | 一种适用于交换机协议的基于状态机的测试用例设计方法 | |
CN105340230A (zh) | 虚拟机架拓扑管理 | |
CN102457420A (zh) | 建立路径数据的网络装置及其方法 | |
CN104618980B (zh) | 无线多跳链状网的路由实现方法 | |
CN104348659A (zh) | 多跳网络的故障检测方法和节点 | |
CN109698792B (zh) | 路由器节点之间的通信方法及其切换方法 | |
US20210211351A1 (en) | Stacking-port configuration using zero-touch provisioning | |
CN103428045A (zh) | 连通性检测方法、装置和系统 | |
CN107148768A (zh) | 用于数据路径确认与验证的系统和方法 | |
CN102377680A (zh) | 路由收敛方法及设备 | |
US9614749B2 (en) | Data processing system and method for changing a transmission table | |
CN102754390B (zh) | 以太网环保护倒换方法、网络设备及系统 | |
CN104410570A (zh) | 一种基于vrrp的数据传输方法及装置 | |
Lopez-Pajares et al. | Amaru: Plug&play resilient in-band control for SDN | |
CN106506366B (zh) | 一种实现多协议标签交换路径查询的方法和节点 | |
US10389656B2 (en) | Determining port-to-port connectivity in an extended bridge | |
CN110798399A (zh) | 网络自动链结备援方法与网络系统 | |
CN102263700A (zh) | 一种报文收发方法、装置和系统 | |
CN113810274A (zh) | 一种路由处理方法及相关设备 | |
CN103441934B (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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180731 Termination date: 20181110 |
|
CF01 | Termination of patent right due to non-payment of annual fee |