校正失效脚本的方法和设备的制造方法_3

文档序号:8282197阅读:来源:国知局
br>[0044]具体而言,在图3的示例中,基于指示引用与数据库中的存储位置的对应关系的数据关系映射(例如,在图3中采取表格形式),确定该引用与数据库中的存储位置(在图3的示例中为ORDERS表格的0RDERS_ID列)对应。应注意,该数据关系映射可事先确定并且存储,以供该步骤使用。
[0045]在本文的示例中,为描述方便起见,以关系型数据库为例进行说明,其中,该关系型数据库以表格形式存储数据。在这一示例中,数据库中的存储位置例如为数据库中的某一表格的某一列。然而,本发明也适用于其他类型的数据库,例如,层次式数据库和网络式数据库,而对应的存储位置例如为节点。此外,虽然在图3中以表格的形式示出了数据关系映射,但是,本领域技术人员将理解,数据关系映射可以采取其他各种适当形式,例如文件形式,只要其能指示引用与数据库中的存储位置的对应关系。
[0046]在图3的示例中,指示对应关系的数据关系映射包括4列,例如,引用ID、数据关联、表格名称以及列名称。然而本领域技术人员可以理解,该数据关系映射可以包括更多或者更少的列。例如,指示数据关联的列可以不包括在数据关系映射中,而是存储在其他位置处。例如,若数据库为其他形式,那么就不需要表格名称以及列名称的列,而是记录该形式下数据库的位置。
[0047]接着,该方法200行进到步骤S206,在该步骤中,查询在步骤S204中确定的存储位置的最新值。
[0048]例如,在图3的示例中,查询在步骤S204确定数据库中的ORDERS表格的0RDERS_ID列的最新值,例如,10503。
[0049]最后,该方法200行进到步骤S208,在该步骤中,将在步骤S206中查询的正确值确定为所述无效引用的正确值。由于在发生脚本失效的情况下,使用单线程模式(也就说,模拟单个用户的行为)对脚本进行调试,因此,该存储位置的最新值即对应于该引用的正确值。
[0050]在图3的示例中,将在步骤S206中查询的正确值(例如,10503)确定为无效引用(例如,订单ID)的正确值。
[0051]利用本发明的方法,在发生由于无效的数据关联导致的脚本失效时,能够利用指示引用与数据库中的存储位置的对应关系的数据关系映射而在数据库中找到与无效的数据关联对应的无效引用的正确值,以使得脚本能够正确运行,完成对web应用功能测试(即,单用户模式对web应用进行测试),从而实现对脚本进行校正的目的。
[0052]在确定了无效引用的正确值之后,该方法200还可包括:使用所确定的正确值来搜索所述无效引用对应的响应,以定位所述正确值在所述响应中的位置。
[0053]在图3所示的示例中,使用在步骤S208确定的订单ID的正确值(例如,10503)搜索所述无效引用对应的响应,得到引用referenceOOl的正确值在响应中的位置。
[0054]该方法200还可包括根据所定位的位置以及所述位置的上下文来为所述无效引用创建数据关联,并且使用所创建的数据关联来更新所述无效引用对应的无效的数据关联。
[0055]在图3所示的示例中,通过在订单ID (例如,referenceOOl)所对应的响应中搜索正确值(例如,10503)来确定该正确值在该响应中的位置;使用该位置以及该位置的上下文,创建数据关联,例如,<ord_Id>([0-9]+)</ord_Id> ;以及使用所创建的数据关联更新无效引用对应的无效的数据关联,例如,〈orderld〉([0-9]+)〈/orderld〉。
[0056]为描述清楚起见,在确定了正确值在响应中的位置以后,对于使用该位置以及该位置的上下文创建数据关联的具体方法下面将参照图3来具体描述。在图3的示例中,响应中包括<ord_Id>10503〈/ord_Id>,针对这一位置和该位置的上下文,生成针对引用referenceOOl的正则表达式<ord_Id> ([0-9]+) </ord_Id>作为数据关联。该正则表达式表示找出<ord_Id>与</ord_Id>之间由0-9组成的任意长度的一串数字作为引用referenceOOl的值。[0_9]表示字符选取范围是O到9的数字,而+表示字符出现I到多次。因此,在后续请求中需要使用引用referenceOOl的值时,将根据正则表达式<ord_Id>([0-9]+)</ord_Id>在响应内容中找到引用referenceOOl的值,并且将这一值作为参数传递给后续请求。
[0057]虽然上面参照图3的具体示例描述了数据关联的创建,然而本领域技术人员可以理解,在得到正确值的位置之后,根据该位置以及该位置的上下文,可以采用本领域已知的各种数据关联方法来创建数据关联。
[0058]利用本发明的方法,能够利用无效引用的正确值来定位正确值在无效引用对应的响应中的位置、利用定位的位置及该位置的上下文来创建数据关联、并且使用所创建的数据关联来更新无效的数据关联。在更新失效脚本的无效的数据关联之后,脚本得到了进一步校正。该校正后的脚本在后续使用时,可对web应用进行功能测试(例如,单用户进行测试)和性能测试(例如,多用户并发进行测试),同时也无需再访问数据库。
[0059]利用本发明的方法,在发生由于无效引用,即无效的数据关联导致的脚本失效时,并不需要重新编写脚本,而是基于指示引用与数据库中的存储位置关系的对应关系的数据关系映射,在数据库中找到无效引用的正确值,以使得脚本能够正确运行,完成对web应用的功能测试(即,单用户模式对web应用进行的测试),从而实现对脚本进行校正的目的。在得到正确值之后,利用其搜索无效引用对应的响应,据此创建数据关联并且用所创建的数据关联来更新无效的数据关联。在更新失效脚本的无效的数据关联之后,脚本得到了进一步校正。该校正后的脚本在后续使用时,可对web应用进行功能测试(例如,单用户进行测试)和性能测试(例如,多用户并发进行测试),同时也无需再访问数据库。
[0060]以上说明了如何使用指示引用与数据库中的存储位置的对应关系的数据关系映射来校正脚本,以下将在一个具体示例中说明如何生成数据关系映射的一个示例。
[0061]在一个示例中,数据关系映射可以在脚本录制阶段生成。图4是表示根据本发明一实施例的生成数据关系映射的方法400的流程图,而图5表示根据本发明一实施例的生成数据关系映射的具体示例的示意图。以下将结合图4和图5来具体描述方法400。
[0062]首先,响应于引用被创建,确定所创建的引用与数据库中的存储位置的对应关系(步骤 S402)。
[0063]一般而言,将访问web应用的请求的响应中的变量创建为引用,其中创建引用包括将所创建的引用对应的请求的响应中的动态变化的变量创建为引用,以供后续请求使用。在图5所示的具体示例中,将针对添加到购物车请求(例如,以图5中的URL表示)的响应中的订单ID (例如,orderld)创建为引用(例如,referenceOOl)。应注意,虽然本文中以订单ID作为引用的具体例子进行描述,然而,本领域技术人员可以理解,引用可以是任何请求的响应中任何动态变化的、后续请求可能使用的变量。
[0064]在一个示例中,响应于引用被创建,确定所创建的引用与数据库中的存储位置的对应关系包括:根据所创建的引用对应的请求引起的在数据库中进行操作的数据库语句和所创建的引用的实际值,来确定所创建的引用与所述数据库中的存储位置的对应关系,其中,所创建的引用的实际值包括在所创建的引用对应的响应中。
[0065]如上所述,以下将以关系型数据库为例说明如何确定引用和数据库中的存储位置的对应关系,其中该关系型数据库以表格形式存储数据。在这一具体示例中,数据库中的存储位置例如为数据库中的某一表格的某一列。
[0066]在一个示例中,根据所创建的引用对应的请求引起的在数据库中进行操作的数据库语句和所创建的引用的实际值,来确定所创建的引用与所述数据库中的存储位置的对应关系包括:根据所
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1