CN101727385A - 用于处理用户接口信息变化的方法和系统 - Google Patents

用于处理用户接口信息变化的方法和系统 Download PDF

Info

Publication number
CN101727385A
CN101727385A CN200810174631A CN200810174631A CN101727385A CN 101727385 A CN101727385 A CN 101727385A CN 200810174631 A CN200810174631 A CN 200810174631A CN 200810174631 A CN200810174631 A CN 200810174631A CN 101727385 A CN101727385 A CN 101727385A
Authority
CN
China
Prior art keywords
user interface
change
influence
interface information
test case
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.)
Pending
Application number
CN200810174631A
Other languages
English (en)
Inventor
杨川
D·S·梅利克谢申
郭宏伟
吴先荣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to CN200810174631A priority Critical patent/CN101727385A/zh
Publication of CN101727385A publication Critical patent/CN101727385A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明提供了一种处理用户接口信息变化的方法和系统。该方法包括以下步骤。获取一新版本应用程序中的用户接口信息。对所述新版本应用程序中的用户接口信息进行解析,以便形成新版本的用户接口追踪记录。将所述新版本的用户接口追踪记录与原版本应用程序的用户接口追踪记录进行比较,以便确定改变的用户接口信息。响应于用户接口信息发生改变,根据预定的用户接口影响规则对改变的用户接口信息进行分析。以及根据分析结果,确定对一测试用例的影响。这样,为测试用例的管理和维护提供了依据。尤其是对于管理和维护上千个测试用例的软件开发项目,帮助更大。这种方便的维护,相应地可以加快软件的开发测试周期。

Description

用于处理用户接口信息变化的方法和系统
技术领域
本发明涉及用户接口的处理技术,尤其涉及一种针对测试用例来处理用户接口信息变化的方法和系统。
背景技术
现在,随着用户要求的提高,以及用户需求的多样化,应用程序(例如,基于网络的应用程序)的用户接口需要提供更多的功能。这使得应用程序的用户接口变得越来越复杂。更多的功能意味着需要进行更多的测试用例来验证应用程序的可用性。对于大的软件开发项目,有可能需要维护上千个测试用例。在开发阶段,经常会改变用户接口。对于用户接口的改变可能会影响到相关的测试用例。这样如何处理并维护这上千个测试用例就变得非常重要。
已有技术中,一般通过以下几种方法来处理涉及测试用例的问题。
针对最后版本的应用程序,执行全部测试用例来检测应用程序的可用性。这是在测试领域最常使用的方法。这样做虽然可行,但是需要花费大量的资源和人力。并且,如果测试出现了异常或问题,也无法快速确定是何种原因。特别地,需要确定是何种原因造成的,尤其是否是软件的其他功能执行问题。这项任务对于测试用例数量大的软件开发来说尤其重要。
应用程序软件的开发人员,可以记录并将软件的全部变化提供给测试人员。这种方法看其来非常可行。但是,实际上,软件开发人员很难提供这种记录。部分原因是由于在开发阶段的频繁修改软件,部分原因是由于在开发阶段过于频繁的全面记录会严重影响开发人员的思路。因此,很难确保开发人员能够及时提供这样全面的文件。
在许多软件开发项目中,采用跟踪软件的源代码之间的同步差异的方法来提供更新报告。但是,即使提供了这种包罗万象的更新报告,对其进行分析以便对测试用例进行适当的调整也是一个非常具有挑战性的任务。测试人员人工进行这项任务将非常耗时,会影响软件的开发周期。对于大的应用程序软件开发项目来说,由于测试用例非常多,根据这种更新报告来人工进行测试用例的管理,几乎是不可行的。而目前很难提供有效而全面的自动分析方法。
以上是应用程序开发和测试领域常用的方法,但是各种方法在不同方面各有所长。因此,开发和测试管理方法需要改进,以便适应不同的需求。
发明内容
鉴于已有技术的不足,本发明提供了一种针对测试用例来处理用户接口信息变化的方法和系统。
本发明提供的一种处理用户接口信息变化的方法,包括:获取一新版本应用程序中的用户接口信息;对所述新版本应用程序中的用户接口信息进行解析,以便形成新版本的用户接口追踪记录;将所述新版本的用户接口追踪记录与原版本应用程序的用户接口追踪记录进行比较,以便确定改变的用户接口信息;响应于用户接口信息发生改变,根据预定的用户接口影响规则对改变的用户接口信息进行分析;以及根据分析结果,确定对一测试用例的影响。
本发明提供的一种处理用户接口信息变化的系统,包括:获取装置,用于获取一新版本应用程序中的用户接口信息;形成装置,用于对所述新版本应用程序中的用户接口信息进行解析,以便形成新版本的用户接口追踪记录;改变确定装置,用于将所述新版本的用户接口追踪记录与原版本应用程序的用户接口追踪记录进行比较,以便确定改变的用户接口信息;分析装置,响应于用户接口信息发生改变,根据预定的用户接口影响规则对改变的用户接口信息进行分析;以及影响确定装置,用于根据分析结果,确定对测试用例的影响。
针对新版本的应用程序,执行测试用例来检测应用程序的可用性。如果测试出现了异常或问题,很多情况下是由于用户接口改变造成的,而并非是软件的其他功能执行问题。对于这种情况,很多时候仅仅对测试用例进行相应的调整就可以解决问题。而不需要对软件的其他功能进行复杂分析。本发明的上述方法,针对用户接口的改变,确定对测试用例的影响。这样,为测试用例的管理和维护提供了依据。尤其是对于管理和维护上千个测试用例的软件开发项目,帮助更大。这种方便的维护,相应地可以加快软件的开发测试周期。
附图说明
图1示出了根据本发明一实施例的处理用户接口信息变化的方法流程图。
图2示出了根据本发明的另一实施例中用户接口组件之间的层次关系。
图3示出了根据一实施例对新版本中的用户接口信息进行解析,以便形成新版本的用户接口追踪记录的过程。
图4示出了根据本发明一实施例对于追踪记录进行分析的过程。
图5a至5d示出了根据本发明一实施例不同用户接口变更类型的用户接口追踪记录的树结构变化。
图6示出了根据本发明一实施例的处理用户接口信息变化的系统方框图。
具体实施方式
以下参照按照本发明实施例的方法、装置描述本发明。其中,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得通过计算机或其它可编程数据处理装置执行的这些指令,产生实现流程图和/或框图中的方框中规定的功能/操作的装置(means)。
也可以把这些计算机程序指令存储在能指令计算机或其它可编程数据处理装置以特定方式工作的计算机可读介质中,这样,存储在计算机可读介质中的指令产生一个包括实现流程图和/或框图中的方框中规定的功能/操作的指令装置(instruction means)的制造品。
还可以把计算机程序指令加载到计算机或其它可编程数据处理装置上,使得在计算机或其它可编程数据处理装置上执行一系列操作步骤,以产生计算机实现的过程,从而在计算机或其它可编程装置上执行的指令就提供实现流程图和/或框图中的方框中规定的功能/操作的过程。
图1示出了根据本发明一实施例的处理用户接口信息变化的方法流程图。该处理用户接口信息变化的方法包括步骤S110至步骤S150。为了提供更多的功能或更完善的功能,以便满足用户的需求,开发人员经常对应用程序进行更新。更新前后的应用程序以不同版本来标识。对于一个新版本的应用程序,需要确定是否重新进行测试,以及程序改变对测试的影响。对于该新版本的应用程序,在步骤S110,获取新版本应用程序中的用户接口信息。
对于有源代码的应用程序,可以从新版本应用程序的源代码中获取用户接口信息。此外,通过在编程时对用户接口加入适当的标注,也可以从其它类型的程序代码,如程序的中间代码或目标代码,获取用户接口信息。
下文以一Visual Basic源程序为例,详细描述如何获取并处理用户接口信息。VB的用户接口相关的代码保存在.frm文件中,部分示例源代码如下:
VERSION 5.00
Begin VB.Form Form1
    Caption       =″Form1″
    ClientHeight  =4485
    ClientLeft    =60
    ClientTop     =345
    ClientWidth   =6630
    LinkTopic     =″Form1″
    ScaleHeight   =4485
    ScaleWidth    =6630
    StartUpPosition=3′Windows Default
    Begin VB.TextBox Text2
       Height     =375
       Left       =1800
       TabIndex   =3
       Top        =1560
       Width      =1935
   End
   Begin VB.CommandButton Command1
       Caption    =″welcome″
       Height     =375
       Left       =2400
       TabIndex   =4
       Top        =2760
       Width      =1335
   End
   Begin VB.TextBox Text1
       Height     =375
       Left       =1800
       TabIndex   =2
       Top        =480
       Width      =1935
   End
   Begin VB.Label Label2
       Caption    =″From:″
       Height     =375
      Left        =720
      TabIndex    =1
      Top         =1680
      Width       =735
   End
   Begin VB.Label Label1
      Caption     =″Name:″
      Height      =255
      Left        =720
      TabIndex    =0
      Top         =600
      Width       =735
   End
End
……
在步骤S120,对所述新版本应用程序中的用户接口信息进行解析,以便形成新版本的用户接口追踪记录。其中,可以通过对新版本的用户接口信息进行解析,获取用户接口组件及组件之间的连接关系,来形成新版本的用户接口追踪记录。
例如,在内存(如果信息过多也可以使用临时文件等方式)中构建树来表示用户接口组件之间的连接关系,如层次关系。每个用户接口组件是树上的一个节点,用户接口组件的属性值记录在每个节点上。示例图如图2所示。
图2示出了根据本发明的一实施例中用户接口组件之间的层次关系。其中示出了前述源代码中的多个用户接口组件Form1、Text2、Command1、Text1和Label2(Label1在图2中未示出)以及用户接口组件之间的层次关系。其中,用户接口组件Form1作为构建的树的根节点,其属性值Type:VB.Form,Caption:Form等,记录在该节点上。根节点Form1包括四个用户接口组件子节点,即Text2,Command1,Text1和Label2。它们的属性值分别记录在相应的用户接口组件子节点上,如Text2的属性Type:VB TextBox,Highlight:375等,Command1的属性Type:VB.CommandButton,Caption:welcome等,Text1的属性Type:VB TextBox,Left:1800等和Label2的属性Type:VB.Label,Caption:form等。
图3示出了根据一实施例对新版本中的用户接口信息进行获取和解析,以便形成新版本的用户接口追踪记录的过程。其中,在步骤S310开始。在步骤S320,一解析器连接到源代码服务器。在步骤S330,打开界面相关的代码文件,如打开.frm文件。在步骤S340,遍历读取各个用户接口组件(UI component)相关属性和组件之间的层次关系。在上述源代码中包括多个用户接口组件,如上面代码中的用户接口组件Form1、Text2、Command1、Text1和Label2等。在步骤S350,构建树结构存储用户接口相关信息。S360生成用户接口追踪记录(UI TrackingRecord)。S370保存结果到用户接口追踪记录库(UI Tracking RecordRepository),并标记上对应的版本号。过程在步骤S380结束。
例如,将构建好的用户接口组件的层次和属性信息,作为一条用户接口追踪记录保存在用户接口追踪记录库中,并标记上对应的版本号(如:Version1.0.1)。具体的保存格式取决于项目的具体需求,例如UI Tracking Record可以以XML文件的形式保存在文件系统中,范例XML文件内容及格式如下。其中,通过XML语言描述了上述源代码中用户接口组件Form1、Text2和Command1等之间之间的连接关系和所述的用户接口组件的信息。
    <?xml version=″1.0″encoding=″UTF-8″?>
    <WinForm winFormID=″form9800″version=″001″
timestamp=″1230081603843″>
       <Component id=″Form1″>
         <Type>VB.Form</Type>
         <Caption>Form1</Caption>
         <ClientHeight>4485</ClientHeight>
         <ClientLeft>60</ClientLeft>
         <ClientTop>345</ClientTop>
         <ClientWidth>6630</ClientWidth>
         <LinkTopic>Form1</LinkTopic>
         <ScaleHeight>4485</ScaleHeight>
         <ScaleWidth>6630</ScaleWidth>
         <StartUpPosition>3′Windows Default</StartUpPosition>
         <Component id=″Text2″>
           <Type>VB.TextBox</Type>
           <Height>375</Height>
           <Left>1800</Left>
           <TabIndex>3</TabIndex>
           <Top>1560</Top>
      <Width>1935</Width>
    </Component>
    <Component id=″Command1″>
      <Type>VB.CommandButton</Type>
      <Caption>welcome</Caption>
      <Height>375</Height>
      <Left>2400</Left>
      <TabIndex>4</TabIndex>
      <Top>2760</Top>
      <Width>1335</Width>
    </Component>
……
  </Component>
</WinForm>
其中,通过XML语言描述了上述源代码中用户接口组件Fomm1、Text2和Command1等之间之间的连接关系和所述的用户接口组件的信息。其中,
<WinForm winFormID=″form9800″version=″001″
timestamp=″1230081603843″>表示版本号为001的用户接口追踪记录,该记录以</WinForm>结束。<Component id=″Form1″>及其相应层次嵌套的
</Component>之间的XML描述,表示用户接口组件Form1为根节点的用户接口组件的描述范围。<Component id=″Form1″>及其相应层次嵌套的
</Component>之内的用户接口组件描述,如
     <Component id=″Text2″>
       <Type>VB.TextBox</Type>
         ...........
       <Width>1935</Width>
      </Component>
表示用户接口组件Text2属于根节点Form1,其中还描述了Text2的属性<Type>VB.TextBox</Type>等。XML文件中的用户接口组件之间的嵌套关系描述了用户接口中的用户接口组件之间的层次关系。XML文件还可以用于描述其它连接关系,如流转关系等。
对于其他类型的程序,如jsp,asp等,也可以采取上述VB程序相似的处理方式。原版本用户接口追踪记录,也可以采取类似的方法提取。
在步骤S130,将所述新版本的用户接口追踪记录与原版本应用程序的用户接口追踪记录进行比较,以便确定改变的用户接口信息。在步骤S140,响应于用户接口信息发生改变,根据预定的用户接口影响规则对改变的用户接口信息进行分析。在步骤S150,根据分析结果,确定对测试用例的影响。具体过程,下面参见图4、5进行详细描述。
图4示出了根据本发明一实施例对于追踪记录进行分析的过程。开始之后,在步骤S410,从用户接口追踪记录库405获取旧版本用户接口追踪记录和新版本用户接口追踪记录。在步骤S420,比较新旧版本追踪记录之间的区别。在内存(如果信息过多也可以使用临时文件等方式)中分别为两个版本的用户接口追踪记录构建树,来表示他们内部的用户接口组件之间的层次关系,每个用户接口组件是树上的一个节点,组件的属性值记录在每个节点上。对两个树形数据结构进行差分比较,得到详细的差分列表,如下文结合图5a-5d的描述所述。多种用户接口变更类型的实现细节,参见下文所述。
不同用户接口变更类型的详细说明对于大部分软件系统来说,可能影响测试用例的因素主要有以下几种原因。添加删除用户接口组件,如从用户接口上删除一个按钮等。修改用户接口上的用户接口组件,如修改窗体(Form)的标题,更改字体颜色等。用户接口布局变化,如改变用户接口组件的位置,或变更嵌套关系(如将一个按钮从一个表格挪到另一个表格中)等。页面流程的变化,如原先从页面A跳转到页面B,现在修改为从页面A跳转到页面C。
根据本发明地一实施例,可以通过比较树形数据结构的方法将新版本的用户接口追踪记录与原版本的用户接口追踪记录进行比较,以便确定改变的用户接口信息。例如,在为每个版本的用户接口追踪记录建立起树形数据结构后,对新旧版本的树进行比较,便可以确定改变的用户接口信息,其中包括得知用户接口变更的类型。以下结合图5a至5d,针对不同用户接口变更类型进行说明。图5a至5d示出了根据本发明一实施例不同用户接口变更类型的用户接口追踪记录的树结构变化。
添加或删除用户接口组件:遍历两棵树,对比节点,从而得出新增或删除节点的列表(每个节点对应一个用户接口组件)。如图5a所示,通过对比两棵树,发现新增了节点“Command1”,即有一个新的按钮被添加到程序用户接口上。
修改用户接口组件:遍历两棵树,对比节点的属性,从而得出被修改的节点列表。如图5b所示,通过对比两棵树,发现节点“Command1”的Caption属性发生变化,从“welcome”变更为“hello world”。
用户接口布局变化:遍历两棵树,对比节点的层次结构,从而得出发生布局变化的节点列表。如图5c所示,通过对比两棵树,发现节点“Text1”被挪到框架Frame1中。
页面流程的变化:对于很多程序(如WEB应用程序)来说,可以通过特定属性(如:HTML中link类型对象的href属性,form类型对象的action属性)得知页面流程。首先遍历两棵树,对比节点的特定属性,从而得出页面流程是否发生变更。如图5d所示,通过对比两棵树,发现节点“Link1”的href属性发生变化,即点击该link后将跳转到新的页面。
本领域的技术人员可以理解,对于测试用例,可以确定其中涉及的用户接口组件。这样,就可以根据用户接口的变更,如用户接口组件变更的类型,来确定受到影响的测试用例。
在步骤S430,根据新旧版本追踪记录之间是否有区别,进行下一步的转移处理。如果没有区别,则过程结束。如果有区别,则在步骤S440,加载规则,读取预先定义用户接口影响规则。对于规则的描述,请参见下文。在步骤S450,根据规则对所述区别进行分析。根据用户接口影响规则的定义,分析上面的差分列表,以获得每个差分可能造成的影响,包括严重等级(severity level),受影响测试用例(test case)等。在步骤S460,根据分析结果产生分析报告465。然后,结束分析过程。
可以根据测试需要,预先确定用户接口影响规则。所述规则可以用于确定何种用户接口信息变化需要改变何种测试用例。在软件开发项目中,不同类型的用户接口变更造成的影响是不同的。比如变更字体颜色,对测试用例的影响程度相对较低,而在界面上添加一个新的按钮或删除一个下拉列表,有可能对测试用例产生较大的影响。在用户接口影响规则中,预先确定的用户接口变更以及它们造成的影响,包括但不限于以下多个方面。
变更信息:如用户接口变更的类型,如增加add,删除remove,修改change等;或用户接口变更的范围,即在哪个或哪类用户接口组件或其属性上发生的变更,如Form1组件的Caption属性等。
影响的类型:如影响的严重程度,如严重、中等、轻微,或1,2,3等;或影响的范围,即哪些或者是哪类测试用例受到影响等。例如,一规则可以为:一页面流程的变化,对涉及该流程的测试用例来说,需要修改流程并重新测试。
根据软件开发项目的实际需求,预先确定的用户接口影响规则可简可繁。下表为一个简单的用户接口影响规则范例的XML文件,其中只包含上面前三项要素的内容。
<?xml version=″1.0″encoding=″UTF-8″?>
<ruleset>
<severity level=″1″action=″add″target=″ANY″/>
表示对于任何组件的增加,影响的严重程度为1
<severity level=″1″action=″remove″target=″ANY″/>
表示对于任何组件的删除,影响的严重程度为1
<severity level=″2″action=″change″target=″Caption″/>
表示对于组件的Caption的修改,影响的严重程度为2
<severity level=″3″action=″change″target=″TabIndex″/>
表示对于TabIndex的修改,影响的严重程度为3
<severity level=″4″action=″change″target=″Left″/>
表示对于Left的修改,影响的严重程度为4
<severity level=″4″action=″change″target=″Top″/>
表示对于Top的修改,影响的严重程度为4
</ruleset>
对于上述规则,还可以进一步确定对于各种测试用例影响程度或者是哪类测试用例受到影响。例如涉及用户输入的测试用例受到影响。本领域的技术人员可以理解,对于测试用例,可以确定其中涉及的用户接口组件。这样,就可以根据用户接口的变更,如用户接口组件变更的类型,来确定受到影响的测试用例。也可以进一步根据用户接口变更影响的严重程度,确定对测试用例的影响。例如,任何组件的增加,影响的严重程度为1;任何组件的删除,影响的严重程度为1;对于TabIndex的修改,影响的严重程度为3。这样,如果一些测试用例仅仅涉及影响严重程度为3或4的用户接口变更,则对这些测试用例,可以不重新测试,或者将其测试的优先级降低。而如果一测试用例涉及影响严重程度为1或多个影响严重程度为1的用户接口变更,则对这些测试用例,要重新测试,或者将其测试的优先级升高;或者需要对测试用例进行修改后,以较高的优先级重新进行测试。根据测试的优先级,可以确定测试用例的重新测试顺序,或根据资源配置确定是否进行重新测试。根据需要,上述规则还可以确定何种用户接口信息变化需要提示测试者。例如,在测试用例执行路径上的改变,使得测试用例中的中间结果的输入输出发生改变,对测试用例需要的改变。
因此,对新旧版本的软件中的用户接口信息,进行分析处理之后,确定受到影响的多个方面。这样,就可以根据用户接口变化对测试用例的影响,来对测试用例进行分类管理,以及进一步根据影响的严重程度,确定需要重新执行的测试用例,以及重新执行的优先级,如顺序。
图6示出了根据本发明一实施例的处理用户接口信息变化的系统方框图。该处理用户接口信息变化的系统600,包括:获取装置610,用于获取一新版本应用程序中的用户接口信息;形成装置620,用于对所述新版本应用程序中的用户接口信息进行解析,以便形成新版本的用户接口追踪记录;改变确定装置630,用于将所述新版本的用户接口追踪记录与原版本应用程序的用户接口追踪记录进行比较,以便确定改变的用户接口信息;分析装置640,响应于用户接口信息发生改变,根据预定的用户接口影响规则对改变的用户接口信息进行分析;以及影响确定装置650,用于根据分析结果,确定对测试用例的影响。
其中,获取装置610可以进一步配置为从新版本应用程序的源代码中获取所述用户接口信息。
其中,形成装置620可以进一步配置为:通过对所述新版本应用程序中的用户接口信息进行解析,获取用户接口组件及组件之间的连接关系,来形成所述新版本的用户接口追踪记录。
其中,改变确定装置630可以进一步配置为:通过比较树形数据结构的方法将所述新版本的用户接口追踪记录与所述原版本的用户接口追踪记录进行比较,以便确定改变的用户接口信息。
其中,改变的用户接口信息可以包括改变的组件。
其中,改变的用户接口信息可以包括改变的组件之间的连接关系。
其中,预定的用户接口影响规则可以包括用户接口变更的类型、用户接口变更的范围、影响的严重程度和影响的范围中的一种或多种。
其中,影响确定装置650可以进一步配置为:确定受到影响的测试用例和受到影响的程度。
其中,影响确定装置650还可以进一步配置为:根据一测试用例受到影响的程度,确定是否需要针对该测试用例重新进行测试。
其中,所述规则用于确定何种用户接口信息变化需要改变何种测试用例。
附图中的流程图和框图,图示了按照本发明实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
所属技术领域的技术人员知道,本发明可以体现为系统、方法或计算机程序产品。因此,本发明可以具体实现为以下形式,即,可以是完全的硬件、完全的软件(包括固件、驻留软件、微代码等)、或者本文一般称为“电路”、“模块”或“系统”的软件部分与硬件部分的组合。此外,本发明还可以采取体现在任何有形的表达介质(medium of expression)中的计算机程序产品的形式,该介质中包含计算机可用的程序码。
可以使用一个或多个计算机可用的或计算机可读的介质的任何组合。计算机可用的或计算机可读的介质例如可以是——但不限于——电的、磁的、光的、电磁的、红外线的、或半导体的系统、装置、器件或传播介质。计算机可读介质的更具体的例子(非穷举的列表)包括以下:有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、诸如支持因特网或内部网的传输介质、或者磁存储器件。注意计算机可用的或计算机可读的介质甚至可以是上面印有程序的纸张或者其它合适的介质,这是因为,例如可以通过电扫描这种纸张或其它介质,以电子方式获得程序,然后以适当的方式加以编译、解释或处理,并且必要的话在计算机存储器中存储。在本文件的语境中,计算机可用的或计算机可读的介质可以是任何含有、存储、传达、传播、或传输供指令执行系统、装置或器件使用的或与指令执行系统、装置或器件相联系的程序的介质。计算机可用的介质可包括在基带中或者作为载波一部分传播的、由其体现计算机可用的程序码的数据信号。计算机可用的程序码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等。
用于执行本发明的操作的计算机程序码,可以以一种或多种程序设计语言的任何组合来编写,所述程序设计语言包括面向对象的程序设计语言——诸如Java、Smalltalk、C++之类,还包括常规的过程式程序设计语言——诸如”C”程序设计语言或类似的程序设计语言。程序码可以完全地在用户的计算上执行、部分地在用户的计算机上执行、作为一个独立的软件包执行、部分在用户的计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在后一种情形中,远程计算机可以通过任何种类的网络——包括局域网(LAN)或广域网(WAN)——连接到用户的计算机,或者,可以(例如利用因特网服务提供商来通过因特网)连接到外部计算机。
以上结合优选法方案对本发明进行了详细的描述,但是可以理解,以上实施例仅用于说明而非限定本发明。本领域的技术人员可以对本发明的所示方案进行修改而不脱离本发明的范围和精神。

Claims (20)

1.一种处理用户接口信息变化的方法,包括:
获取一新版本应用程序中的用户接口信息;
对所述新版本应用程序中的用户接口信息进行解析,以便形成新版本的用户接口追踪记录;
将所述新版本的用户接口追踪记录与原版本应用程序的用户接口追踪记录进行比较,以便确定改变的用户接口信息;
响应于用户接口信息发生改变,根据预定的用户接口影响规则对改变的用户接口信息进行分析;以及
根据分析结果,确定对测试用例的影响。
2.根据权利要求1所述的方法,其中从新版本应用程序的源代码中获取所述用户接口信息。
3.根据权利要求1所述的方法,其中通过对所述新版本应用程序中的用户接口信息进行解析,获取用户接口组件及组件之间的连接关系,来形成所述新版本的用户接口追踪记录。
4.根据权利要求1至3中任一项所述的方法,其中通过比较树形数据结构的方法将所述新版本的用户接口追踪记录与所述原版本的用户接口追踪记录进行比较,以便确定改变的用户接口信息。
5.根据权利要求4所述的方法,其中改变的用户接口信息包括改变的组件。
6.根据权利要求4所述的方法,其中改变的用户接口信息包括改变的组件之间的连接关系。
7.根据权利要求4所述的方法,其中预定的用户接口影响规则包括用户接口变更的类型、用户接口变更的范围、影响的严重程度和影响的范围中的一种或多种。
8.根据权利要求4所述的方法,其中确定对测试用例的影响包括确定受到影响的测试用例和受到影响的程度。
9.根据权利要求8所述的方法,其中进一步包括根据一测试用例受到影响的程度,确定是否需要针对该测试用例重新进行测试。
10.根据权利要求1所述的方法,其中所述规则用于确定何种用户接口信息变化需要改变何种测试用例。
11.一种处理用户接口信息变化的系统,包括:
获取装置,用于获取一新版本应用程序中的用户接口信息;
形成装置,用于对所述新版本应用程序中的用户接口信息进行解析,以便形成新版本的用户接口追踪记录;
改变确定装置,用于将所述新版本的用户接口追踪记录与原版本应用程序的用户接口追踪记录进行比较,以便确定改变的用户接口信息;
分析装置,响应于用户接口信息发生改变,根据预定的用户接口影响规则对改变的用户接口信息进行分析;以及
影响确定装置,用于根据分析结果,确定对测试用例的影响。
12.根据权利要求11所述的系统,其中获取装置进一步配置为从新版本应用程序的源代码中获取所述用户接口信息。
13.根据权利要求11所述的系统,其中形成装置进一步配置为:通过对所述新版本应用程序中的用户接口信息进行解析,获取用户接口组件及组件之间的连接关系,来形成所述新版本的用户接口追踪记录。
14.根据权利要求11至13中任一项所述的系统,其中改变确定装置进一步配置为:通过比较树形数据结构的方法将所述新版本的用户接口追踪记录与所述原版本的用户接口追踪记录进行比较,以便确定改变的用户接口信息。
15.根据权利要求14所述的系统,其中改变的用户接口信息包括改变的组件。
16.根据权利要求14所述的系统,其中改变的用户接口信息包括改变的组件之间的连接关系。
17.根据权利要求14所述的系统,其中预定的用户接口影响规则包括用户接口变更的类型、用户接口变更的范围、影响的严重程度和影响的范围中的一种或多种。
18.根据权利要求14所述的系统,其中影响确定装置进一步配置为:确定受到影响的测试用例和受到影响的程度。
19.根据权利要求18所述的系统,其中影响确定装置进一步配置为:根据一测试用例受到影响的程度,确定是否需要针对该测试用例重新进行测试。
20.根据权利要求11所述的系统,其中所述规则用于确定何种用户接口信息变化需要改变何种测试用例。
CN200810174631A 2008-10-31 2008-10-31 用于处理用户接口信息变化的方法和系统 Pending CN101727385A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200810174631A CN101727385A (zh) 2008-10-31 2008-10-31 用于处理用户接口信息变化的方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200810174631A CN101727385A (zh) 2008-10-31 2008-10-31 用于处理用户接口信息变化的方法和系统

Publications (1)

Publication Number Publication Date
CN101727385A true CN101727385A (zh) 2010-06-09

Family

ID=42448304

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200810174631A Pending CN101727385A (zh) 2008-10-31 2008-10-31 用于处理用户接口信息变化的方法和系统

Country Status (1)

Country Link
CN (1) CN101727385A (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105453050A (zh) * 2014-07-30 2016-03-30 株式会社日立制作所 开发辅助系统
CN105791242A (zh) * 2014-12-24 2016-07-20 阿里巴巴集团控股有限公司 对象类型的识别方法、服务器、客户端和系统
CN105988929A (zh) * 2015-03-02 2016-10-05 杭州睿琪软件有限公司 代码一致性检测方法
CN107908540A (zh) * 2017-07-26 2018-04-13 平安壹钱包电子商务有限公司 测试用例创建方法、装置、计算机设备及介质
CN108270604A (zh) * 2016-12-30 2018-07-10 北京亿阳信通科技有限公司 一种业务数据变更的追踪方法和系统
CN108509337A (zh) * 2018-03-15 2018-09-07 链家网(北京)科技有限公司 基于接口调用的动态测试方法和装置
CN108536576A (zh) * 2017-03-02 2018-09-14 富士通株式会社 用于对应用程序的测试脚本进行优化的方法和装置
CN109710298A (zh) * 2018-08-20 2019-05-03 平安普惠企业管理有限公司 接口管理方法、接口管理装置、接口管理设备及存储介质
CN110134498A (zh) * 2018-02-09 2019-08-16 中移(苏州)软件技术有限公司 一种应用兼容性评估方法及装置
CN114721744A (zh) * 2022-04-25 2022-07-08 平安普惠企业管理有限公司 接口改造评估方法、装置、电子设备及可读存储介质

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105453050A (zh) * 2014-07-30 2016-03-30 株式会社日立制作所 开发辅助系统
CN105791242A (zh) * 2014-12-24 2016-07-20 阿里巴巴集团控股有限公司 对象类型的识别方法、服务器、客户端和系统
CN105791242B (zh) * 2014-12-24 2019-02-26 阿里巴巴集团控股有限公司 对象类型的识别方法、服务器、客户端和系统
CN105988929A (zh) * 2015-03-02 2016-10-05 杭州睿琪软件有限公司 代码一致性检测方法
CN105988929B (zh) * 2015-03-02 2018-12-21 杭州睿琪软件有限公司 代码一致性检测方法
CN108270604A (zh) * 2016-12-30 2018-07-10 北京亿阳信通科技有限公司 一种业务数据变更的追踪方法和系统
CN108270604B (zh) * 2016-12-30 2022-01-07 北京亿阳信通科技有限公司 一种业务数据变更的追踪方法和系统
CN108536576B (zh) * 2017-03-02 2021-08-27 富士通株式会社 用于对应用程序的测试脚本进行优化的方法和装置
CN108536576A (zh) * 2017-03-02 2018-09-14 富士通株式会社 用于对应用程序的测试脚本进行优化的方法和装置
CN107908540A (zh) * 2017-07-26 2018-04-13 平安壹钱包电子商务有限公司 测试用例创建方法、装置、计算机设备及介质
CN107908540B (zh) * 2017-07-26 2021-04-06 平安壹钱包电子商务有限公司 测试用例创建方法、装置、计算机设备及介质
CN110134498A (zh) * 2018-02-09 2019-08-16 中移(苏州)软件技术有限公司 一种应用兼容性评估方法及装置
CN108509337A (zh) * 2018-03-15 2018-09-07 链家网(北京)科技有限公司 基于接口调用的动态测试方法和装置
CN109710298A (zh) * 2018-08-20 2019-05-03 平安普惠企业管理有限公司 接口管理方法、接口管理装置、接口管理设备及存储介质
CN114721744A (zh) * 2022-04-25 2022-07-08 平安普惠企业管理有限公司 接口改造评估方法、装置、电子设备及可读存储介质

Similar Documents

Publication Publication Date Title
CN101727385A (zh) 用于处理用户接口信息变化的方法和系统
US11797298B2 (en) Automating identification of code snippets for library suggestion models
US11442702B2 (en) Code completion
US10705943B2 (en) Automating identification of test cases for library suggestion models
US10459695B2 (en) Correction of code errors using machine learning
US20200264870A1 (en) Automating Generation of Library Suggestion Engine Models
CA2653887C (en) Test script transformation architecture
CN103164334A (zh) 检测web应用自动测试用例中的断裂点的系统和方法
JP5005510B2 (ja) ソフトウェアの設計支援方法、設計支援装置及び設計支援プログラム
Debreceni et al. Automated model merge by design space exploration
CN108647025A (zh) 文档对象模型中节点的处理方法及装置、电子和存储设备
Guo et al. Exploring the potential of chatgpt in automated code refinement: An empirical study
CN102999318B (zh) 辅助编程的方法及装置
US8595215B2 (en) Apparatus, method, and computer program product for processing query
Sacramento et al. Web application model generation through reverse engineering and UI pattern inferring
EP2105837B1 (en) Test script transformation analyzer with change guide engine
Strüber et al. Scalability of Model Transformations: Position Paper and Benchmark Set.
Reid et al. NCQ: code reuse support for Node. js developers
CN116610558A (zh) 代码检测方法、装置、电子设备及计算机可读存储介质
CN112274913A (zh) 游戏服务器的合并方法及装置、存储介质、电子装置
Nabuco et al. Inferring user interface patterns from execution traces of web applications
Hinterreiter et al. Feature-oriented clone and pull for distributed development and evolution
Hachemi et al. Reusing process patterns in software process models modification
Rodríguez-Echeverría et al. Generating a conceptual representation of a legacy Web application
CN111880840A (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
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20100609