本发明专利技术公开了一种主键驱动的模块化的自动化测试方法,属于自动化测试领域。该方法包含以下步骤:以功能为单位开发脚本;根据功能的逻辑再将功能脚本进行模块化分拆;通过功能逻辑算法将分拆的模块化的脚本进行组装;开发以功能为单位的脚本对应的测试对象;设计功能脚本对应的数据驱动的数据结构,增加场景主键字段;开发业务场景脚本;根据测试场景用例以场景主键区分、增加数据驱动记录;根据测试用例增加功能对应的检查点,也以场景主键区分。与现有技术相比,本发明专利技术的主键驱动的模块化的自动化测试方法可以以较低的开发、维护成本完成对场景法用例的自动化测试开发工作,并且具有比较广泛地应用范围。
【技术实现步骤摘要】
本专利技术涉及自动化测试领域,具体地说是。
技术介绍
1.自动化测试的构成脚本、测试对象、数据驱动、检查点。脚本里包含的是对对 象的操作,测试对象文件中包含的是对对象(程序的控件)的描述(关键属性值),数据驱 动中包含的是需要录入的数据,检查点就是对对象期望值检查的方法。2.自动化测试的工作过程自动化测试工具从测试对象文件中获取对象的描述, 并识别对象;同时从数据驱动中获得数据,然后根据脚本中包含的操作步骤,对程序对象进 行操作(将数据按步骤录入到程序)或检查,完成功能的测试。3.自动化测试的开发模式自动化测试脚本的开发基本处于面向过程的模式,当 开发按场景划分的用例对应的脚本时,每个测试场景对应一段脚本和相应的测试对象、数 据驱动以及检查点。在这种模式中同一个功能会被多个测试场景用到。此时,这个功能的 脚本、测试对象、数据驱动都要分别在多个脚本中进行开发和维护,工作量巨大,而且其中 相当一部分工作量是重复的。而且这种模式的脚本开发过程模式只能等待场景的用例设计 完成后才能开始脚本的开发导致脚本开发和用例设计无法并行进行。现有技术中自动化测试构成的结构如附图1所示。
技术实现思路
本专利技术的技术任务是针对上述现有技术的不足,提供一种主键驱动的模块化的自 动化测试方法。利用该方法可以减少脚本开发和维护工作量。本专利技术的技术任务是按以下方式实现的一种主键驱动的模块化的自动化测试方 法,包含以下步骤1)以功能为单位开发的可复用的模块化的脚本;2)形成与功能脚本对应的以功能为单位的可复用的测试对象;3)根据功能的逻辑再将功能脚本进行模块化分拆,拆分成多个对象操作的方法;4)开发功能逻辑算法将分拆的模块化的脚本进行组装,形成完整的功能操作方 法;5)设计功能脚本对应的模块化的可复用数据驱动的数据结构;6)增加数据驱动的场景主键字段,用以区分不同场景的数据驱动的记录;7)如果同一个场景需要作同一个功能的多张单据,场景字段可以与单据编号字段 设置成复合主键;8)开发业务场景脚本,此脚本全是对功能操作方法的调用,通过传递场景主键参 数,执行此场景的自动化测试;9)根据测试场景用例增加以场景主键区分的数据驱动记录;10)根据测试用例增加功能对应的检查点,也以场景主键区分。本专利技术的主键驱动的模块化的自动化测试方法与现有技术相比,其区别在于 脚本是以功能为单位开发的,每个功能的脚本本身就是模块化的,然后根据功 能的逻辑将功能脚本进行再次的模块化分拆,拆分成多个对象操作的方法。最后通过功能 逻辑算法将分拆的模块化的脚本进行组装,形成完整的功能操作方法。场景走查中要实现 此功能的操作时只需要直接调用逻辑算法并传递场景主键参数即可,大大减少了脚本的开 发、维护的工作量,尤其在脚本维护阶段当功能发生变动时,采用此方法可以减少相当多的 工作量。 由于脚本是以功能为单位开发的,这样功能对应的测试对象也是模块化的,功 能的对象只需要在此功能对应的一个测试对象文件中进行维护,减少了测试对象维护工作量。 被拆分的多个对象操作的方法也可以直接调用,实现更加灵活的走查需求。 功能对应的数据结构也是模块化的,所有业务场景中此功能的数据都存放功能 对应的数据驱动中。后期结构以及数据维护成本会比较低,而不同场景只需要维护相关数 据记录以场景主键区分就可以了。其次,可以将场景主键和单据编号设置成复合主键,满足 一个场景制一个功能的多张单据的需求。另外,功能对应的数据驱动的可以按照功能分拆 后的对象操作方法分别对应,就是说一个功能可以根据功能逻辑对应多个具体的数据驱动 文件,数据驱动文件中可以根据场景主键或复合主键定义从属关系,让数据驱动表更加清 晰、灵活、易于操作。 业务场景的脚本里只有功能实现方法的调用,根据数据驱动中场景主键区分的 数据实现不同场景的走查,执行的步骤非常清晰。 检查点也是对应功能以场景主键区分的,而且可以使用统一的检查点的方法调 用,方便维护。与现有技术相比,具有以下突出的有益效果(一 )实现了脚本、数据驱动、测试对象、检查点之间的分离和各自的模块化,提高 了脚本、数据以及对象的复用性,降低了自动化执行的开发和维护成本。( 二)功能的模块化的脚本与的测试场景实现了分离,提高了脚本的灵活性,降低 了脚本耦合度。最后通过调用模块化的功能脚本并传递场景主键参数的方法,来实现灵活 调用、自由组合的测试场景的执行。(三)采用此方法可以在用例设计好之前就开发模块化功能脚本以及数据驱动的 数据结构。而用例完成后要做的只是数据驱动中数据记录的编辑以及业务场景脚本的开 发。从而从一定程度上减少了脚本开发对用例设计进度的依赖。(四)本方法是一种通用的脚本实现方法,不局限于某一个自动化脚本工具,应用 范围非常广。附图说明附图1是现有技术中自动化测试构成的结构示意图;附图2是本专利技术主键驱动的模块化的自动化测试方法的实现流程图;附图3是本专利技术专利技术主键驱动的模块化的自动化测试方法的结构框附图4是本专利技术实施例结构框图。 具体实施例方式参照说明书附图以具体实施例对本专利技术的主键驱动的模块化的自动化测试方法 作以下详细地说明。如附图2所示,本专利技术的测试方法包含以下步骤1)以功能为单位开发的可复用的模块化的脚本;2)形成与功能脚本对应的以功能为单位的可复用的测试对象;3)根据功能的逻辑再将功能脚本进行模块化分拆,拆分成多个对象操作的方法;4)开发功能逻辑算法将分拆的模块化的脚本进行组装,形成完整的功能操作方 法;5)设计功能脚本对应的模块化的可复用数据驱动的数据结构;6)增加数据驱动的场景主键字段,用以区分不同场景的数据驱动的记录;7)如果同一个场景需要作同一个功能的多张单据,场景字段可以与单据编号字段 设置成复合主键;8)开发业务场景脚本,此脚本全是对功能操作方法的调用,通过传递场景主键参 数,执行此场景的自动化测试;9)根据测试场景用例增加以场景主键区分的数据驱动记录;10)根据测试用例增加功能对应的检查点,也以场景主键区分。通过以上步骤形成如附图3所示的结构。实施例(ERP软件产品中库存模块的业务走查脚本实现方法)如附图4所示,在库存的多个业务场景(如采购收货、生产收货)都里会用到收 货功能,这时可以开发收货功能的脚本,收货功能的脚本只对应一个测试对象文件。收货功 能可以拆成索引对象操作方法、表头对象操作方法、表体对象操作方法和辅助分录对象操 作方法,一张收货单通常是一个索引记录对应一个表头记录在对应一个或多个表体记录, 一个表体记录又对应一个或多个辅助分录记录,根据这个逻辑我们可以开发一对多的循环 算法“收货单输入算法”,这个算法可以实现以上对应关系的录入。然后可以设计开发收 货功能的数据驱动的数据结构,索引、表头对应一张表,表体对应一张表,辅助分录对应一 张表,表头、表体、辅助分录对应的表分别包含“主键”字段用以区分不同场景的数据记录和 “单据编号”字段用于关联主表(表头数据驱动表)和从表(表体数据驱动表)。当库存模 块的采购收货场景和生产收货场景的测试用例设计出来之后我们可以开始两个场景的场 景脚本,这部分脚本只包括功能实现方法的调用。调用时分别传递采购收货和生产收货两 个主键参数,然后可以根据用例增加数据驱动表头表、表体表和辅助分录表的记录以“采购 收本文档来自技高网...
【技术保护点】
一种主键驱动的模块化的自动化测试方法,其特征在于包含以下步骤:1)以功能为单位开发的可复用的模块化的脚本;2)形成与功能脚本对应的以功能为单位的可复用的测试对象;3)根据功能的逻辑再将功能脚本进行模块化分拆,拆分成多个对象操作的方法;4)开发功能逻辑算法将分拆的模块化的脚本进行组装,形成完整的功能操作方法;5)设计功能脚本对应的模块化的可复用数据驱动的数据结构;6)增加数据驱动的场景主键字段,用以区分不同场景的数据驱动的记录;7)如果同一个场景需要作同一个功能的多张单据,场景字段可以与单据编号字段设置成复合主键;8)开发业务场景脚本,此脚本全是对功能操作方法的调用,通过传递场景主键参数,执行此场景的自动化测试;9)根据测试场景用例增加以场景主键区分的数据驱动记录;10)根据测试用例增加功能对应的检查点,也以场景主键区分。
【技术特征摘要】
【专利技术属性】
技术研发人员:程宝君,赵超,刘俊红,
申请(专利权)人:浪潮集团山东通用软件有限公司,
类型:发明
国别省市:88[中国|济南]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。