[发明专利]支持Python扩展的测试方法无效
申请号: | 200910083739.2 | 申请日: | 2009-05-08 |
公开(公告)号: | CN101551778A | 公开(公告)日: | 2009-10-07 |
发明(设计)人: | 刘志方;高小鹏;汪治;龙翔;刘斌 | 申请(专利权)人: | 刘志方;高小鹏;汪治;殷永峰 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F9/44;G06F9/45 |
代理公司: | 北京思海天达知识产权代理有限公司 | 代理人: | 张 慧 |
地址: | 100088北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 支持 python 扩展 测试 方法 | ||
技术领域
本方法一种支持Python扩展的测试方法,涉及一种软件自动化测试领域、语言应用扩展领域。能够根据具体测试需求的变更,更加灵活的扩展出新的测试应用。本方法是利用Python测试脚本语言的灵活特性,以及其解释器的快速移植性,将Python测试脚本语言的用于测试领域,对测试应用提供更好的支持。该方法需要将Python解释器嵌入测试系统中,并将系统的测试驱动模块与Python本身的模块相整合,使得Python脚本的执行能够驱动测试的运行。同时,针对测试的需求变更,系统支持对Python测试脚本语言的扩展,从而进一步提高脚本对测试的应变支持能力。
背景技术
随着移动终端设备在人们生活中的大量普及,移动终端所能完成的功能也日趋丰富多彩,但随之而来是终端软件的质量问题不断涌现。因此,在智能终端投放市场前对终端的全面测试便成了智能终端软件开发商亟待解决的问题。
但是智能终端还处于一个不断成熟和完善的阶段,各种新的功能不断被提出和实现,因此对于这种终端软件的测试方法的要求,除了能够完成现有软件功能的测试外,还需要具有良好的通用性,更重要的是要具有非常好的扩展性,能够在新的测试需求提出后,在最短的时间和代价内完成对新需求的测试工作。
目前,主要的测试手段是脚本驱动的测试方式,在这种类型的测试方法的灵活性主要取决于两点,一个是脚本语言本身的描述能力,另外一个是解释器的解释能力。因此,为了提高测试方法的扩展性,需要从上述两个方面入手:选取描述能力比较强的脚本语言,如果必要,通过各种手段扩充其脚本的描述能力;从解释器部分入手,不仅仅将脚本的执行局限在解释器所能解释的语义范围内,而是将解释的环节进行扩充或者修改,达到利于扩展的目的。
发明内容
本发明的目的在于,通过提供一种支持Python扩展的测试方法,利用Python的语言灵活性,以及其解释器的快速移植性,将Python的用于测试领域,对测试应用提供更好的支持。该方法需要将Python解释器嵌入测试系统中,并将系统的测试驱动模块与Python解释器本身的模块相整合,使得Python脚本的执行能够驱动测试的运行。同时,针对测试的需求变更,系统支持用户对Python的扩展,从而进一步提高脚本对测试的支持能力。
本发明是采用以下技术手段实现的:
一种支持Python扩展的测试方法,支持该方法的测试系统包括了Python解释器以及Python脚本编辑器,并将Python解释器嵌入测试系统中,使系统的测试驱动模块与Python解释器本身的模块相整合,从而Python脚本的执行能够驱动测试的运行;同时,针对测试的需求变更,系统支持用户对Python的扩展;包括以下步骤;
建立一个基于脚本驱动的测试环境;
a、测试配置与用例设计模块,按照被测终端的特点以及测试要求,配置相应的测试环境,设计符合测试方案要求的测试用例;
b、Python脚本编辑模块,根据设计的测试用例将测试的输入、输出、判断操作以脚本形式进行描述;
c、Python解释器模块,针对Python测试脚本语言的解释工具,将脚本中描述的各项操作解释为实际被测终端上的输入数据,并且根据测试的反馈数据对脚本执行进行逻辑调度;
d、脚本解释器的扩展模块,将解释器的解释能力开放给用户,提供对解释器的定制以及扩充。
e、测试驱动模块,将解释器解析出的输入数据传送到被测终端,并按照该数据驱动终端运行,然后捕获相应的结果数据;
f、被测终端,为实际的被测系统。
前述的测试系统采用基于脚本语言的测试用例描述和测试驱动模式进行构建。
测试脚本语言采用Python,并将Python解释器嵌入测试系统。
前述的测试用例使用Python脚本进行描述;这种定义测试用例的Python脚本内容包括测试对象、测试动作、测试结果。
执行测试时,测试系统采用Python脚本定义的测试用例提交给脚本解释器。
前述的Python脚本解释器解释测试用例,并生成相应的测试指令,测试指令提交给测试系统中的测试驱动模块。
测试驱动模块根据测试指令产生相应的测试动作,驱动被测终端,在被测试终端上执行并产生测试结果。
前述的测试系统支持用户扩展测试对象、测试动作、以及测试数据类型。
前述的支持用户扩展测试对象、测试动作、以及测试数据类型,支持用户在Python中引入新的语言要素,扩展脚本解释模块;系统支持用户定义其引入的语言要素的执行,以及相应的指令驱动方式。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于刘志方;高小鹏;汪治;殷永峰,未经刘志方;高小鹏;汪治;殷永峰许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910083739.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:用于控制无线设备的系统和方法
- 下一篇:一种工业汽轮机低背压焊接排汽缸