一种dns增量数据更新服务自动化测试方法和系统的制作方法

文档序号:9237986阅读:504来源:国知局
一种dns增量数据更新服务自动化测试方法和系统的制作方法
【技术领域】
[0001]本发明属于计算机网络领域,涉及一种DNS增量数据更新服务自动化测试方法和系统。
【背景技术】
[0002]DNS(Domain Name System,域名系统)增量数据更新服务负责从域名注册数据库提取域名解析增量数据并更新到DNS解析服务器上。域名注册服务系统和审核等业务系统都会产生域名解析增量数据,而且影响域名解析并产生解析增量数据的业务规则非常多,DNS增量数据更新服务必须完全涵盖这些域名解析变化,相应提取解析增量数据,并正确地更新到DNS解析服务器上。DNS解析服务作为重要的互联网基础服务,必须确保域名解析数据准确无误,这也对DNS增量数据更新服务的正确性提出了很高的要求,保障服务正确性的测试方法也至关重要。
[0003]对DNS增量数据更新服务的测试需要模拟域名注册服务的操作和审核等业务系统的操作,并需要检查数据库和DNS解析服务器数据的正确性,测试方法通常有如下缺点:a、影响域名解析的业务规则多,测试设计很难实现全部业务规则的覆盖。b、需要操纵的系统多,输入格式难统一,很难实现自动化测试。C、手工测试工作量太大,效率低。d、测试效果难以衡量和评估。

【发明内容】

[0004]针对上述问题,本发明提出一种DNS增量数据更新服务自动化测试方法和系统,通过建立域名主机业务模型,在测试设计时,可以准确全面地对域名解析相关业务规则进行合理覆盖,通过技术手段模拟各业务系统操作和结果检查,实现测试过程自动化,提高效率和准确性。
[0005]为了实现上述目的,本发明采用的技术方案涉及以下几个关键技术点:
[0006]I)根据业务规则建立域名主机业务模型。通过域名主机业务模型确定待测业务路径,再在路径上叠加考虑模型所不能涵盖的解析相关业务需求,形成测试用例。
[0007]2)针对模型和测试用例确定数据描述规则,并定义和实现测试动作关键字。根据描述规则和关键字对测试用例进行描述,形成纯文本的测试数据描述文件,通过对数据描述文件的解释执行,实现测试用例的执行自动化。
[0008]3)将部分业务系统业务操作的模拟简化为直接对数据库的操作,提高自动化测试覆盖率。
[0009]4)定义特定的DNS查询校验关键字,实现对DNS解析服务器的查询和域名解析正确性验证。
[0010]具体地,
[0011]一种DNS增量数据更新服务自动化测试方法,包括以下步骤:
[0012]I)建立域名主机业务模型,所述域名主机变换业务模型涵盖域名生命周期中主机变换相关的主要业务规则。
[0013]将域名在各种主机条件下的状态根据业务规则建立迀移关系,形成域名主机业务模型,涵盖域名主机变换相关的主要业务规则,可对应产生主机相关的DNS增量解析数据。
[0014]2)根据域名主机业务模型确定待测业务路径并叠加域名主机业务模型所不能涵盖的其他影响解析的业务条件,形成测试用例,然后针对域名主机业务模型和测试用例确定数据描述规则,并定义和实现测试操作所需的动作关键字。
[0015]3)根据数据描述规则和动作关键字,对测试用例进行描述转换,形成包含测试步骤的测试数据描述文件。
[0016]4)根据测试环境,设定相应配置项。
[0017]5)依序解释执行测试数据描述文件,最终实现DNS增量数据更新服务自动化测试。
[0018]进一步地,步骤I)中,所述主机变换相关的主要业务规则包括:创建和删除主机,引用和解除从属主机,引用和解除非从属主机,从属主机被别域名引用和解除。
[0019]进一步地,步骤2)中,域名主机业务模型所不能涵盖的解析相关业务条件包括:主机IP变化、域名状态、审核状态。
[0020]进一步地,步骤2)形成测试用例的步骤具体包括:首先在域名主机变换模型中确认所有业务路径,获取所有跟除主机IP特征变化外的主机特征变化相关的业务步骤,然后根据业务特点和测试需求在所有通路上寻找合适的插入点,将不同的域名状态和审核状态插入到通路上的业务步骤之间,并考虑主机IP特征变化,这样形成若干涵盖全部主机特征、域名状态和审核状态的业务步骤集合,结合相应DNS服务器的期望解析结果即形成测试用例。
[0021]进一步地,步骤2)中,状态迀移动作和其他对被测环境的功能操作都定义为动作关键字,用以实现对域名注册业务、管理业务、数据库、DNS服务器的相应操作,具体操作包括:创建/删除域名、创建/删除主机、增加/删除域名状态、审核域名、等待特定时间、增加/删除主机IP、查询/验证域名服务器、操作数据库。
[0022]进一步地,通过等待特定时间以等待DNS增量数据更新到DNS解析服务器。
[0023]进一步地,步骤4)中,所述配置项包括:域名注册服务器地址和端口、模拟域名注册客户端所需的ID和密码、DNS解析服务器地址和端口、数据库连接所需相关描述、测试步骤和测试数据描述文件所在目录。
[0024]一种DNS增量数据更新服务自动化测试系统,包括:域名主机业务模型、测试步骤和数据描述模块、动作关键字实现模块、配置管理模块和执行控制模块,其中:
[0025]所述域名主机业务模型是涵盖域名全生命周期的主要主机特征变化的模型;
[0026]所述测试步骤和数据描述模块用于根据域名主机业务模型及其它解析相关业务的描述规则进行测试步骤描述,定义业务操作所需的动作关键字,并将测试步骤用动作关键字和具体测试数据进行描述;
[0027]所述动作关键字实现模块用于实现测试数据描述所用的动作关键字功能;
[0028]所述配置管理模块用于对系统配置文件进行解析,获取测试环境相关配置项;
[0029]所述执行控制模块用于对每个测试数据描述文件中的内容进行解释执行。
[0030]进一步地,上述系统还包括测试报告生成模块,用于生成测试报告。
[0031]进一步地,实现测试数据描述所用的动作关键字功能包括:模拟域名注册客户端跟域名注册服务器业务交互,实现域名、主机和部分域名状态的变化操作;模拟审核业务系统操作数据库实现域名审核状态和部分域名状态的变化操作;对域名解析服务器进行查询从而验证域名解析结果正确性的操作;让系统休眠指定的时间以等待DNS增量数据更新到解析服务器的操作。
[0032]进一步地,所述测试环境相关配置项,包括:域名注册服务器地址和端口、模拟域名注册客户端所需的ID和密码、DNS解析服务器地址和端口、数据库连接所需相关描述、测试步骤和测试数据描述文件所在目录。
[0033]进一步地,所述执行控制模块对每个测试数据描述文件中的内容进行解释执行,包括:影响域名解析的相关业务模拟操作、对DNS解析服务器的查询验证、以用调用测试报告生成模块生成测试报告。
[0034]本发明的有益效果如下:
[0035]由于采用了以上的方案,可实现以下优点:1)测试自动化率高,几乎所有测试用例都可以自动化执行,提高了测试效率。2)基于模型进行测试用例设计,由于模型可以反映业务规则,因此测试用例对业务规则覆盖度可以很高,而且将部分业务系统业务操作的模拟简化为直接对数据库的操作,提高自动化测试覆盖率。3)定义特定的DNS查询校验关键字,可以评估覆盖率,有效保障域名DNS解析正确性。4)数据驱动测试执行,测试人员无需编程,只需要编写测试步骤描述和数据文件,即可作为自动化测试输入,降低了测试人员的自动化测试难度。5)通用性强,若业务规则变化,只需要相应变化业务模型,编写相应测试用例,自动化测试方法和系统不需要重新设计和修改。
【附图说明】
[0036]图1是本发明DNS增量数据更新服务自动化测试系统结构示意图。
[0037]图2是本发明域名主机业务模型示意图。
[0038]图3是本发明DNS增量数据更新服务自动化测试方法流程图。
【具体实施方式】
[0039]本发明DNS增量数据更新服务自动化测试系统,如图1所示,包括:
[0040]I)域名主机业务模型是涵盖域名全生命周期的主机特征变迀模型,其内容如图2。图中状态I为初始状态即创建域名。状态2.1/2.2为域名未创建主机的状态。状态3.1/3.2/3.3/3.4为域名创建了主机但此主机未被别域名引用的状态。状态4.1/4.2/4.3/4.4为域名创建了主机,并且其主机未被别域名引用的状态。图中的箭头表示各状态间的迀移关系,即业务规则允许的迀移路径。影响域名解析结果的因素有:主机特征、域名状态和审核状态,其中域名注册服务器会操纵主机和域名状态变化,审核等业务系统会影响到审核状态和部分域名状态。主机业务模型涵盖除主机IP变化外的主机特征变化。域名状态和审核状态操作可以在模型图中两个节点中间出现。
[0041]2)测试步骤和数据描述模块即根据模型确立测试步骤,并进行文字和数据描述。首先在域名主机模型图上寻找所有路径,获取所有跟主机特征变化相关的业务步骤,然后根据业务特点和测试需求在所有通路上寻找合适的插入点,将不同的域名状态和审核状态插入到通路上的业务步骤之间,并根据需要考虑主机IP变化,这样形成若干涵盖主机特征、域名状态和审核状态的业务步骤集合,结合对期望结果的判断即形成测试步骤。然后定义业务操作所需的动作关键字,将测试步骤用关键字和具体测试数据进行描述,形成可解释执行的测试数据描述文本文件。
[0042]例如选定某条业务路径为:1.1>2.1>3.2>3.2
[0043]叠加考虑审核和状态变化后的路径为:1.1>2.1>审核为unpass〉审核为pass〉添加状态 pendingTransfer>3.2>3.2
[0044]对应的业务描述为:创建域名引用非从属主机、审核为unpass、审核为pass、为域名添加pendingTransfer状态、增删从属主机数量(但保留至少一个)。
[
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1