CN110532458B - 一种查找方式的确定方法、确定装置、服务器及存储介质 - Google Patents

一种查找方式的确定方法、确定装置、服务器及存储介质 Download PDF

Info

Publication number
CN110532458B
CN110532458B CN201910809255.5A CN201910809255A CN110532458B CN 110532458 B CN110532458 B CN 110532458B CN 201910809255 A CN201910809255 A CN 201910809255A CN 110532458 B CN110532458 B CN 110532458B
Authority
CN
China
Prior art keywords
training
entropy
webpage
searching
version
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.)
Active
Application number
CN201910809255.5A
Other languages
English (en)
Other versions
CN110532458A (zh
Inventor
董孔明
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.)
Cloudminds Shenzhen Robotics Systems Co Ltd
Original Assignee
Cloudminds Shenzhen Robotics Systems Co Ltd
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 Cloudminds Shenzhen Robotics Systems Co Ltd filed Critical Cloudminds Shenzhen Robotics Systems Co Ltd
Priority to CN201910809255.5A priority Critical patent/CN110532458B/zh
Publication of CN110532458A publication Critical patent/CN110532458A/zh
Application granted granted Critical
Publication of CN110532458B publication Critical patent/CN110532458B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例涉及自动化测试领域,公开了一种查找方式的确定方法、确定装置、服务器及存储介质。本发明中查找方式的确定方法,包括:根据网页中任一元素的位置信息和预设的熵预测模型,获取每种查找该元素的查找方式的熵,每种查找该元素的查找方式的熵用于指示在网页的更新版中通过查找方式查到的元素不是该元素的概率,熵预测模型是基于训练网页的各版本的结构信息以及各版本对应的标签数据训练获得,标签数据用于指示每种查找方式查到的元素是否为指定元素;选取熵最小的查找方式作为网页的查找方式。本实施方式,使得可以确定出最适合查找网页元素的查找方式,即使网页发生更新,基于该查找方式编写的测试用例的改动小,减小对网页测试的维护成本。

Description

一种查找方式的确定方法、确定装置、服务器及存储介质
技术领域
本发明实施例涉及自动化测试领域,特别涉及一种查找方式的确定方法、确定装置、服务器及存储介质。
背景技术
自互联网诞生以来,信息的共享越来越普遍,几乎所有的电子产品都依托于互联网而存在,而互联网中一个不可忽略的对象是浏览器,当我们访问一个网站的时候,利用浏览器查看各种各样的网页,而不同的网页具有不同的结构,也包含不同的内容。
网页是基于超文本标记语言(Hyper Text Markup Language,简称“html”)制作的。在网页正式发布前,需要对网页进行测试,通常网页测试包含功能测试以及自动化测试等;自动化测试是根据现有网站的结构,利用自动测试的方法实现机器自动的测试,目前针对网站的自动化测试的主流技术是通过html的结构查找网页中各元素的方式完成,例如,浏览器自动化测试框架selenium。
发明人发现相关技术中至少存在如下问题:目前的对网页的测试往往依赖于网页测试人员撰写测试用例的能力,例如,当网页的结构发生变化,如增加了控件,则会导致原有的自动化测试用例可能不能正确的找到更新后的网页中各元素,测试用例的修改量大大增加;但是,同样在网页发生更新后,经验丰富的测试人员撰写的测试用例并不需要进行太大的更改。
发明内容
本发明实施方式的目的在于提供一种查找方式的确定方法、确定装置、服务器及存储介质,使得可以确定出最适合查找网页元素的查找方式,当网页发生更新,基于该查找方式编写的测试用例的改动小,减小对网页测试的维护成本。
为解决上述技术问题,本发明的实施方式提供了一种查找方式的确定方法,包括:根据网页中任一元素的位置信息和预设的熵预测模型,获取每种查找该元素的查找方式的熵,每种查找该元素的查找方式的熵用于指示在网页的更新版中通过查找方式查到的元素不是该元素的概率,熵预测模型是基于训练网页的各版本的结构信息以及各版本对应的标签数据训练获得,标签数据用于指示每种查找方式查到的元素是否为指定元素;选取熵最小的查找方式作为网页的查找方式。
本发明的实施方式还提供了一种查找方式的确定装置,包括:获取模块和选取模块;获取模块,用于根据网页中任一元素的位置信息和预设的熵预测模型,获取每种查找该元素的查找方式的熵,每种查找该元素的查找方式的熵用于指示在网页的更新版中通过查找方式查到的元素不是元素的概率,熵预测模型是基于训练网页的各版本的结构信息以及各版本对应的标签数据训练获得,标签数据用于指示每种查找方式查到的元素是否为指定元素;选取模块,用于选取熵最小的查找方式作为网页的查找方式。
本发明的实施方式还提供了一种服务器,包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述的查找方式的确定方法。
本发明的实施方式还提供了计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时实现上述的查找方式的确定方法。
本发明实施方式相对于现有技术而言,在网页的测试过程中,通常通过查找方式查找网页中的各元素,当网页发生更新后,利用该查找方式可能找到的元素并不是原来指定的待查找元素,需要大量修改该查找方式的查找代码,才可以查找到原来指定的待查找元素,导致对网页的测试的维护成本增加;通过网页的任意元素的位置信息和预设的熵预测模型,获取每种查找该元素的查找方式的熵,选取最小熵的查找方式作为网页的查找方式;由于每种查找该元素的查找方式的熵用于指示在该网页的更新版本中通过该查找方式查到的元素不是待查找的元素的概率,因而查找该元素的查找方式的熵越小,表明该查找方式在更新版本中查找到指定的待查找元素的概率越高,选取熵最小的查找方式作为该网页的查找方式,使得该网页即使发生更新后,利用该查找方式查到的元素为指定的待查找元素的概率高,在测试该网页的过程中,该查找方式的查找代码被修改的概率减小,提高了维护测试该网页的效率,减少维护该测试网页的成本,也降低了测试人员的测试门槛。
另外,训练网页的各版本包括:训练网页的初始版本和训练网页的各更新版本;熵预测模型的训练过程,具体包括:根据训练网页的初始版本的结构信息以及训练网页的各更新版本的结构信息,确定每个训练网页的各更新版本相对于训练网页的初始版本之间结构差异的差异信息;根据每个差异信息以及每个版本对应的标签数据,训练指示训练网页的初始版本中任意元素的位置信息与每种查找方式的熵之间函数关系的熵预测模型。基于各训练版本与初始版本之间结构差异的差异信息,以及每个版本对应的标签数据,即可训练得到熵预测模型,训练数据简单,且有针对性,便于该熵预测模型的训练。
另外,在训练获得所述熵预测模型之后,熵预测模型的训练过程还包括:将第一训练元素的位置信息输入熵预测模型,获得每种查找第一训练元素的查找方式的熵,选取熵最小的查找方式作为第一预测结果;将第二训练元素的位置信息输入熵预测模型,获得每种查找第二训练元素的查找方式的熵,选取熵最小的查找方式作为第二预测结果,第一训练元素与第二训练元素在训练网页的初始版本的结构中处于同层的位置;判断第一预测结果和第二预测结果是否相同,若确定不相同,则重新训练熵预测模型。通过判断第一预测结果以及第二预测结构是否相同,检测训练得到的熵预测模型是否准确,从而提高熵预测模型的预测熵的准确性。
另外,各版本对应的标签数据所包含的标签数目为版本中元素的数目与查找方式的数目之积。可以保证该各版本对应的标签数据准确地指示出每种查找方式查到的元素是否为指定元素。
另外,查找方式为以下查找方式的多种组合:基于属性的查找方式、基于类名的查找方式、基于标签的查找方式以及基于存储路径的查找方式。提供多种查找方式,查找灵活。
另外,熵预测模型的网络结构为长短期记忆网络结构。由于长短期记忆网络结构可以关联前后输入的数据,使得输出的数据与此前输入的数据相关,提高模型的输出的数据的准确性,因而利用该长短期记忆网络结构训练熵预测模型,使得该熵预测模型每一次预测的熵可以基于上一次输入的元素的位置基础再进行预测,从而使得预测的熵更加准确。
另外,网页的查找方式用于确定测试所述网页的测试用例。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1是根据本发明第一实施方式提供的一种查找方式的确定方法的具体流程示意图;
图2是根据本发明第一实施方式提供的一种查找方式的确定方法中一种网页的结构示意图;
图3是根据本发明第二实施方式提供的一种查找方式的确定方法中检测熵预测模型是否准确的具体实现示意图;
图4是根据本发明第二实施方式中一种训练网页示意图;
图5是根据本发明第三实施方式提供的一种查找方式的确定装置的具体结构示意图;
图6是根据本发明第四实施方式提供的一种服务器的具体结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请所要求保护的技术方案。
以下各个实施例的划分是为了描述方便,不应对本发明的具体实现方式构成任何限定,各个实施例在不矛盾的前提下可以相互结合相互引用。
本发明的第一实施方式涉及一种查找方式的确定方法。该查找方式的确定方法应用于具有运算功能的设备,例如,电脑、服务器等。该查找方式的确定方法可以确定查找网页元素的查找方式,该网页的查找方式用于确定测试网页的测试用例,从而通过测试用例实现对网页进行自动化测试。该查找方式的确定方法的具体流程如图1所示:
步骤101:根据网页中任一元素的位置信息和预设的熵预测模型,获取每种查找该元素的查找方式的熵。
具体的说,每种查找该元素的查找方式的熵用于指示在网页的更新版中通过该查找方式查到的元素不是该元素的概率,熵预测模型是基于训练网页的各版本的结构信息以及各版本对应的标签数据训练获得,标签数据用于指示每种查找方式查到的元素是否为指定元素。
网页中存在各种元素,例如,按键<button>、图片<imag>、标题<title>等,每个元素具有各自对应的位置信息,位置信息可以为该元素的路径信息,比如:绝对路径信息以及相对路径信息。可以根据该网页的结构信息,确定任一元素的位置信息,例如,图2为网页A的结构图,结构信息通常包括该网页结构图中的所有的内容,即包括每个元素的位置以及与其它元素之间的位置关系;从图2中,可以获知每个元素的位置信息,<body>元素下从左边向右的第一个<span>元素的位置,即标记为21的<span>,可以表示为"/html/body/div[1]/div[2]/span"。
每种查找该元素的查找方式即指查找输入熵预测模型的元素的查找方式。其中,查找方式为以下查找方式的多种组合:基于属性的查找方式、基于类名的查找方式、基于标签的查找方式以及基于存储路径的查找方式。基于属性的查找方式,例如,基于元素的ID查找的方式,<textarea id="s_is_result_css"style="display:none;">,该“textarea”为htlm中的文本输入控件元素,该元素的id为“s_is_result_css”;还可以基于元素的名称的查找方式,例如,<button name="ok">;该基于元素的名称的查找方式可以查到名称为“ok”的按键元素,即可查找到该button。基于类名的查找方式,例如,<div class="wrapper_l">,查找类型为“wrapper_l”的元素。基于标签的查找方式,标签表示如,<input>,<button>,<a>,例如,基于<a>的查找方式即为查找该网页中所有的<a>的元素。基于存储路径的查找方式,例如,//*[@id="form"]/input[1]表示为元素input[1]的路径,利用路径即可查找到该<input>元素。
查找指定元素的查找方式的熵用于指示在该网页的更新版本中通过该查找方式查找元素不是待查到的元素的概率,因而查找该元素的查找方式的熵越小,表明该查找方式在更新版本中查找到指定的待查找元素的概率越高。也就是说该查找指定元素的查找方式的熵可以反映在更新版本中进行元素查找时,该查找方式的代码发生变化的可能性,若该查找方式的代码发生变化的可能性越大,熵越大,变化的可能性越小,熵越小。例如,如果通过id、name当方式查找,那么未来版本变动可能的变化会很小,那么熵就很小,如果通过xpath查找,可能下一个更新版本增加了某些元素造成结构完成变化,如:从//*[@id="form"]/input[1]变成了//*[@id="form"]/input[2],在需要查找的<input>元素前增加了一个<input>,这时如果是通过xpath查找方式查找第二个<input>元素(更新版本中的第二个<input>元素即为上一版本中的第一个<input>元素),就需要更新对应的查找代码才能确保正常运行,那么xpath的熵就越大。
一个具体的实现中,熵预测模型的训练过程,具体包括:根据训练网页的初始版本的结构信息以及训练网页的各更新版本的结构信息,确定每个训练网页的各更新版本相对于训练网页的初始版本之间结构差异的差异信息;根据每个差异信息以及每个版本对应的标签数据,训练指示训练网页的初始版本中任意元素的位置信息与每种查找方式的熵之间函数关系的熵预测模型。
具体的说,训练该熵预测模型可以采用神经网络结构的方式,如:循环神经网络(Recurrent Neural Network,简称“RNN”)等方式。用于训练的数据集包括:训练网页的初始版本的结构信息以及训练网页的各更新版本的结构信息。训练网页的数目为多个,例如,1000个训练网页。
针对一个训练网页进行如下处理:可以将该训练网页的各更新版本的结构信息分别与该训练网页的初始版本的结构信息进行做差,即可得到每个更新版本的结构信息相对于该初始版本的结构信息之间的结构差异的差异信息;例如,更新版本增加了一个button,那么该版本相对于初始版本结构差异的差异信息即为该:增加了button,且增加的button的位置信息。
将确定的各差异信息以及各个版本对应的标签数据作为该熵预测模型的训练数据集,可以预先设置训练网页的初始版本中任意元素的位置信息与每种查找方式的熵之间关系的初始函数关系,利用训练集不断调整该初始函数关系中各个参数,直至该初始函数收敛得到该熵预测模型,训练的过程在此处将不再赘述。其中,各版本的标签数据可以用于指示每种查找方式查找到的元素是否为指定元素,指定元素即为待查找的元素,例如,查找元素button的查找方式有2种,版本1.0中利用id查找方式查找到的元素为button,则查找button的id查找方式的标签设置为1,版本1.0中利用name查找方式查找到的元素为input,则查找button的name查找方式的标签设置0,标签“1”表示查找方式查到的元素是指定元素,标签“0”表示查找方式查到的元素不是指定元素。
需要说明的是,为了保证各版本对应的标签数据可以准确地指示该版本对应的每种查找方式查到的元素是否为指定元素;各版本对应的标签数据所包含的标签数目为版本中元素的数目与查找方式的数目之积。
步骤102:选取熵最小的查找方式作为网页的查找方式。
具体的说,可以将每种查找方式的熵按照熵的大小进行排序,选取熵最小的查找方式作为该网页的查找方式。例如,需要查找一个<button>的元素,输入为该button的位置,输出为每种查找该button的查找方式的熵,预测结果如下:通过id查找,熵为0.1;通过name查找,熵为0.1;通过class查找,熵为0.2;通过tag查找,熵为0.3;通过xpath查找,熵为0.5;按照熵的升序排列查找方式,即为:通过id查找、通过name查找、通过class查找、通过tag查找、通过xpath查找;选取通过id查找或者通过name查找作为该网页的查找方式。
需要说明的是,确定了该查找方式后,测试人员可以基于确定的查找方式编写测试用例,测试用例用于实现对网页的自动化测试。
本发明实施方式相对于现有技术而言,在网页的测试过程中,通常通过查找方式查找网页中的各元素,当网页发生更新后,利用该查找方式可能找到的元素并不是原来指定的待查找元素,需要大量修改该查找方式的查找代码,才可以查找到原来指定的待查找元素,导致对网页的测试的维护成本增加;通过网页的任意元素的位置信息和预设的熵预测模型,获取每种查找该元素的查找方式的熵,选取最小熵的查找方式作为网页的查找方式;由于每种查找该元素的查找方式的熵用于指示在该网页的更新版本中通过该查找方式查找元素不是待查找的元素的概率,因而查找该元素的查找方式的熵越小,表明该查找方式在更新版本中查找到指定的待查找元素的概率越高,选取熵最小的查找方式作为该网页的查找方式,使得该网页即使发生更新后,利用该查找方式查到的元素为指定的待查找元素的概率高,在测试该网页的过程中,该查找方式的查找代码被修改的概率减小,提高了维护测试该网页的效率,减少维护该测试网页的成本,也降低了测试人员的测试门槛。
本发明的第二实施方式涉及一种查找方式的确定方法。该查找方式的确定方法包括:根据网页中任一元素的位置信息和预设的熵预测模型,获取每种查找该元素的查找方式的熵;选取熵最小的查找方式作为网页的查找方式。
第二实施方式是对第一实施方式中训练熵预测模型的进一步,主要改进之处在于:在第在本发明第二实施方式中,在训练获得熵预测模型之后,判断该熵预测模型的预测结果是否准确,若是不准确则重新训练该熵预测模型。该熵预测模型训练采用长短期记忆网络(Long Short-Term Memory,简称“LSTM”)模型,该LSTM模型的输出与之前的输入相关。即上一次的输入也会影响本次的输出。
该检测的步骤具体如图3所示:
步骤201:将第一训练元素的位置信息输入熵预测模型,获得每种查找第一训练元素的查找方式的熵,选取熵最小的查找方式作为第一预测结果。
具体的说,选取训练网页的初始版本中任一元素作为第一训练元素,将该第一训练元素的位置信息输入该熵预测模型,获得每种查找第一训练元素的查找方式的熵,并选取最小的查找方式作为第一预测结构。
步骤202:将第二训练元素的位置信息输入熵预测模型,获得每种查找第二训练元素的查找方式的熵,选取熵最小的查找方式作为第二预测结果,第一训练元素与第二训练元素在训练网页的初始版本的结构中处于同层的位置。
具体的说,根据该训练网页的初始版本的结构信息,确定在训练网页的初始版本的结构中与第一训练元素处于同层的位置的元素,并将该元素作为第二训练元素,例如,图4为训练网页初始版本的结构示意图,第一训练元素标记为10,第二训练元素标记为20,第一训练元素与第二训练元素处于同一层。将该第二训练元素的位置信息输入该熵预测模型,获得每种查找第二训练元素的查找方式的熵,选取熵最小的查找方式作为第二预测结果。
步骤203:判断第一预测结果和第二预测结果是否相同,若确定不相同,则执行步骤204;若确定相同,则结束流程。
具体的说,针对同一个训练网页,不同的训练元素位置得到的熵最小的查找方式应当相同,基于此原理,判断第一预测结果与第二预测结果是否相同,若不相同,则表明该熵预测模型不准确,需要重新训练,若结果相同,则表明该熵预测模型准确,无需再次训练。
步骤204:重新训练熵预测模型。
具体的说,由于熵预测模型不准确,可以增加用于训练的训练数据,或者重新设置初始函数关系。
本实施方式提供的查找方式的确定方法,通过第一预测结果以及第二预测结构是否相同,检测训练得到的熵预测模型是否准确,从而提高应用的熵预测模型的预测熵的准确性。
上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
本发明第三实施方式涉及一种查找方式的确定装置,该查找方式的确定装置的具体结构如图5所示,包括:获取模块301和选取模块302。
获取模块301,用于根据网页中任一元素的位置信息和预设的熵预测模型,获取每种查找元素的查找方式的熵,每种查找元素的查找方式的熵用于指示在网页的更新版中通过查找方式查到的元素不是元素的概率,熵预测模型是基于训练网页的各版本的结构信息以及各版本对应的标签数据训练获得,标签数据用于指示每种查找方式查到的元素是否为指定元素;选取模块302,用于选取熵最小的查找方式作为网页的查找方式。
不难发现,本实施方式为与第一实施方式相对应的装置实施例,本实施方式可与第一实施方式互相配合实施。第一实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第一实施方式中。
值得一提的是,本实施方式中所涉及到的各模块均为逻辑模块,在实际应用中,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现。此外,为了突出本发明的创新部分,本实施方式中并没有将与解决本发明所提出的技术问题关系不太密切的单元引入,但这并不表明本实施方式中不存在其它的单元。
本发明第四实施方式涉及一种服务器,该服务器40的具体结构如图6所示,包括:至少一个处理器401;以及,与至少一个处理器401通信连接的存储器402;其中,存储器402存储有可被至少一个处理器401执行的指令,指令被至少一个处理器401执行,以使至少一个处理器401能够执行第一实施方式或第二实施方式中的查找方式的确定方法。
其中,存储器402和处理器401采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器401和存储器402的各种电路链接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器401处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器401。
处理器401负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器可以被用于存储处理器在执行操作时所使用的数据。
本发明第五实施方式涉及一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时实现第一实施方式或第二实施方式中的查找方式的确定方法。
本领域技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。

Claims (9)

1.一种查找方式的确定方法,其特征在于,包括:
根据网页中任一元素的位置信息和预设的熵预测模型,获取每种查找所述元素的查找方式的熵,所述每种查找所述元素的查找方式的熵用于指示在所述网页的更新版本中通过所述查找方式查到的元素不是所述元素的概率,所述熵预测模型是基于训练网页的各版本的结构信息以及各所述版本对应的标签数据训练获得,所述标签数据用于指示每种查找方式查到的元素是否为指定元素;
选取熵最小的查找方式作为所述网页的查找方式;
其中,所述训练网页的各版本包括:所述训练网页的初始版本和所述训练网页的各更新版本;
所述熵预测模型的训练过程,具体包括:
根据所述训练网页的初始版本的结构信息以及所述训练网页的各更新版本的结构信息,确定每个所述训练网页的各更新版本相对于所述训练网页的初始版本之间结构差异的差异信息;
根据每个所述差异信息以及每个所述版本对应的标签数据,训练指示所述训练网页的初始版本中任意元素的位置信息与每种查找方式的熵之间函数关系的熵预测模型。
2.根据权利要求1所述的查找方式的确定方法,其特征在于,在训练获得所述熵预测模型之后,所述熵预测模型的训练过程还包括:
将第一训练元素的位置信息输入所述熵预测模型,获得每种查找所述第一训练元素的查找方式的熵,选取熵最小的查找方式作为第一预测结果;
将第二训练元素的位置信息输入所述熵预测模型,获得每种查找所述第二训练元素的查找方式的熵,选取熵最小的查找方式作为第二预测结果,所述第一训练元素与所述第二训练元素在所述训练网页的初始版本的结构中处于同层的位置;
判断所述第一预测结果和所述第二预测结果是否相同,若确定不相同,则重新训练所述熵预测模型。
3.根据权利要求2所述的查找方式的确定方法,其特征在于,各所述版本对应的标签数据所包含的标签数目为所述版本中元素的数目与查找方式的数目之积。
4.根据权利要求2所述的查找方式的确定方法,其特征在于,所述查找方式为以下查找方式的多种组合:基于属性的查找方式、基于类名的查找方式、基于标签的查找方式以及基于存储路径的查找方式。
5.根据权利要求1所述的查找方式的确定方法,其特征在于,所述熵预测模型的网络结构为长短期记忆网络结构。
6.根据权利要求2所述的查找方式的确定方法,其特征在于,所述网页的查找方式用于确定测试所述网页的测试用例。
7.一种查找方式的确定装置,其特征在于,包括:获取模块和选取模块;
所述获取模块,用于根据网页中任一元素的位置信息和预设的熵预测模型,获取每种查找所述元素的查找方式的熵,所述每种查找所述元素的查找方式的熵用于指示在所述网页的更新版中通过所述查找方式查到的元素不是所述元素的概率,所述熵预测模型是基于训练网页的各版本的结构信息以及各所述版本对应的标签数据训练获得,所述标签数据用于指示每种查找方式查到的元素是否为指定元素;其中,所述训练网页的各版本包括:所述训练网页的初始版本和所述训练网页的各更新版本;所述熵预测模型的训练过程,具体包括:根据所述训练网页的初始版本的结构信息以及所述训练网页的各更新版本的结构信息,确定每个所述训练网页的各更新版本相对于所述训练网页的初始版本之间结构差异的差异信息;根据每个所述差异信息以及每个所述版本对应的标签数据,训练指示所述训练网页的初始版本中任意元素的位置信息与每种查找方式的熵之间函数关系的熵预测模型;
所述选取模块,用于选取熵最小的查找方式作为所述网页的查找方式。
8.一种服务器,其特征在于,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1-6任一所述的查找方式的确定方法。
9.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的查找方式的确定方法。
CN201910809255.5A 2019-08-29 2019-08-29 一种查找方式的确定方法、确定装置、服务器及存储介质 Active CN110532458B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910809255.5A CN110532458B (zh) 2019-08-29 2019-08-29 一种查找方式的确定方法、确定装置、服务器及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910809255.5A CN110532458B (zh) 2019-08-29 2019-08-29 一种查找方式的确定方法、确定装置、服务器及存储介质

Publications (2)

Publication Number Publication Date
CN110532458A CN110532458A (zh) 2019-12-03
CN110532458B true CN110532458B (zh) 2022-04-19

Family

ID=68665192

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910809255.5A Active CN110532458B (zh) 2019-08-29 2019-08-29 一种查找方式的确定方法、确定装置、服务器及存储介质

Country Status (1)

Country Link
CN (1) CN110532458B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113110991A (zh) * 2021-03-29 2021-07-13 青岛海尔科技有限公司 页面元素的定位方法及装置、存储介质及电子装置
CN115905767B (zh) * 2023-01-07 2023-06-02 珠海金智维信息科技有限公司 基于固定候选框目标检测算法的网页登录方法及系统

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101593184A (zh) * 2008-05-29 2009-12-02 国际商业机器公司 自适应地定位动态网页元素的系统和方法
CN104036011A (zh) * 2014-06-24 2014-09-10 北京奇虎科技有限公司 网页元素的显示方法以及浏览器装置
CN105095067A (zh) * 2014-05-21 2015-11-25 北京奇虎科技有限公司 用户界面元素对象识别及自动化测试的方法和装置
CN106991045A (zh) * 2017-03-24 2017-07-28 广州酷狗计算机科技有限公司 页面校验方法及装置
CN107015907A (zh) * 2017-03-15 2017-08-04 中国地质大学(武汉) 一种自动准确定位页面元素的系统和方法
CN107861868A (zh) * 2017-10-31 2018-03-30 郑州云海信息技术有限公司 一种提取自动化测试对象的方法及系统
CN108491319A (zh) * 2018-02-11 2018-09-04 广州小百合信息技术有限公司 Web自动化测试方法及基于该方法的系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103034583B (zh) * 2011-09-30 2016-03-30 国际商业机器公司 一种用于处理软件自动测试脚本的方法和系统

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101593184A (zh) * 2008-05-29 2009-12-02 国际商业机器公司 自适应地定位动态网页元素的系统和方法
CN105095067A (zh) * 2014-05-21 2015-11-25 北京奇虎科技有限公司 用户界面元素对象识别及自动化测试的方法和装置
CN104036011A (zh) * 2014-06-24 2014-09-10 北京奇虎科技有限公司 网页元素的显示方法以及浏览器装置
CN107015907A (zh) * 2017-03-15 2017-08-04 中国地质大学(武汉) 一种自动准确定位页面元素的系统和方法
CN106991045A (zh) * 2017-03-24 2017-07-28 广州酷狗计算机科技有限公司 页面校验方法及装置
CN107861868A (zh) * 2017-10-31 2018-03-30 郑州云海信息技术有限公司 一种提取自动化测试对象的方法及系统
CN108491319A (zh) * 2018-02-11 2018-09-04 广州小百合信息技术有限公司 Web自动化测试方法及基于该方法的系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于DOM的Web信息自动抽取;吴伟等;《现代图书情报技术》;20040225(第02期);第75-78页 *
面向垂直搜索引擎的一种动态网页的抓取方法;杨曦等;《科技信息(学术研究)》;20080205(第04期);第211页 *

Also Published As

Publication number Publication date
CN110532458A (zh) 2019-12-03

Similar Documents

Publication Publication Date Title
US10713149B2 (en) Processing automation scripts of software
CN110276446B (zh) 模型训练和选择推荐信息的方法和装置
CN107273269B (zh) 日志解析方法及装置
US10621255B2 (en) Identifying equivalent links on a page
CN109684584B (zh) 一种浏览器内核的智能切换方法、装置、终端及存储介质
CN105446874A (zh) 一种资源配置文件的检测方法和装置
CN110532458B (zh) 一种查找方式的确定方法、确定装置、服务器及存储介质
US20170097927A1 (en) Cascading style sheet meta language performance
CN108959550B (zh) 用户关注点挖掘方法、装置、设备及计算机可读介质
CN112417338B (zh) 一种页面适配方法、系统及设备
CN110908907A (zh) Web页面测试方法、装置、设备及存储介质
CN113535587B (zh) 目标应用检测方法、装置及计算机设备
US20220365871A1 (en) System and method for identification of web elements used in automation test case
CN114548079B (zh) 一种文本显示方法、装置及可读存储介质
CN110309044B (zh) 一种Web系统中样式变更测试方法及终端
CN115687736B (zh) 一种web应用的搜索方法、装置及电子设备
CN111831948B (zh) 网页类型的检测方法、装置及计算机设备
US20230052224A1 (en) Automatic filling of a form with formatted text
CN116701215A (zh) 接口测试案例生成方法、系统、设备及存储介质
CN117215947A (zh) 一种页面白屏检测方法、装置、计算机设备及存储介质
CN114816985A (zh) 一种自动化测试的对象识别方法、装置、系统及介质
CN115344494A (zh) 测试用例的元素定位方法、装置、计算机设备及介质
CN115203064A (zh) 代码检测方法、装置、计算机设备及可读存储介质
CN117608719A (zh) 页面元素查找方法、装置、电子设备及介质
CN111858299A (zh) 一种自动化差异分析验证的方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant