技术新讯 > 计算推算,计数设备的制造及其应用技术 > 一种面向手机测试用例的层级实体及关系提取方法及系统  >  正文

一种面向手机测试用例的层级实体及关系提取方法及系统

  • 国知局
  • 2024-08-22 14:57:40

本发明属于手机测试,尤其涉及一种面向手机测试用例的层级实体及关系提取方法及系统。

背景技术:

1、在手机测试过程中,测试用例文本记录了应用程序在不同的场景下的运行方式以及预期达到的目标,是对手机测试过程的约束。测试工程师按照测试用例规范执行测试,不仅可以提高测试的覆盖率,还可以及时发现、分析和修复手机存在的问题。可以说,手机测试用例是测试工作有效开展的基础,对手机测试工作有非常重要的指导作用。

2、随着手机测试工作的不断推进,手机测试用例也会不断积累,逐渐形成数量庞大的历史测试用例文本库。通常,测试用例文本包括用例名称、前置条件、操作步骤和预期结果四部分,其中前置条件是指在执行测试用例之前必须满足的条件或状态,它是为了确保测试环境和被测对象处于适当的状态,以便进行准确和可重复的测试。操作步骤是指在执行测试用例期间需要按照特定顺序执行的一系列操作或动作,描述测试人员与被测对象的交互方式,以模拟用户的行为并测试特定功能。预期结果是指执行测试用例后,在前置条件约束下,操作步骤所期望得到的具体结果或反馈。其中前置条件、操作步骤和预期结果可以继续细分为多个句子,每个句子都有多个短语或词语组合而成。在现有的测试用例文本生成过程中,已经开始注意对历史测试用例文本的使用,主要的使用场景有以下2种。

3、基于产品需求文档(product requirement document,prd)的测试用例文本生成。prd会简单描述测试条件和目标,测试用例文本需要基于prd的描述生成详细的名称、条件、步骤和结果。在这个过程中,可以通过检索历史测试用例文本,寻找相似测试用例,从而减轻文本生成的工作量;当难以找到相似测试用例时,参考历史测试用例文本的书写规范,有助于生成标准化的测试用例,避免反复修正文本。基于流程图的测试用例文本生成。流程图描述了测试的全过程,它的符号则表示测试的输入、步骤、条件和输出。在流程图设计过程中,当存在难以直接判断的结构时,可以参考历史测试用例的设计过程和文本,辅助生成完整的测试流程图,从而实现测试用例文本的生成。

4、历史测试用例文本包含大量的专家先验知识。在目前的使用场景下,历史测试用例的利用率较低,无法充分利用历史测试用例文本中的知识。而且现有场景下测试用例生成依然主要依赖人工完成,不同人对知识理解的标准不统一,可能影响知识利用的效果。另外,随着历史测试用例文本数量的不断增加,维护与使用历史测试用例的难度和所需的人力成本也将不断增加。

5、为了解决以上问题,本发明基于历史测试用例文本库,提出一种面向手机测试领域知识的层级实体与关系提取方法。该方法可以充分表达测试用例文本中的知识,并且能够自动从文本中提取实体和关系。同时,该方法还具有较高的转移性,能实现多种模块、多样场景下测试用例文本的实体关系表达。

技术实现思路

1、针对当前手机测试领域知识表达和提取困难的问题,本发明提出了一种面向手机测试用例的层级实体及关系提取方法及系统,结合手机测试用例文本的语法特征和语义结构,实现多层级实习和关系的表达和提取。

2、本方法的技术方案为一种面向手机测试用例的层级实体及关系提取方法,具体包括以下步骤:

3、步骤1:获取多个手机测试用例文本,将每个手机测试用例文本分解为多个段落,进一步将段落分解为多个句子,继而将句子分解为多个词语,构建段落级实体、句子级实体和原子级实体三层实体表达模型;根据不同层级实体间存在的约束、限制和递进关系,构建层级内关系及层级间关系表达模型。

4、步骤2:通过分段将测试用例文本分解为段落级实体,利用标点符号对段落文本分句,分解得到句子级实体。顾及原子实体的语义特征,建立词语、拼音、字符多粒度融合的名称实体识别模型,提取得到原子实体。

5、步骤3:基于原子实体识别结果,设计面向依存句法分析和语义依存分析的实体间关系的识别与抽取;

6、进一步的,所述步骤1具体如下:

7、步骤1.1:构建三层实体表达模型;

8、所述段落级实体是测试用例的主要组成部分。一般的,第i个测试用例可分解为用例名称段落级实体casenamei、前置条件段落级实体precondi、操作步骤段落级实体stepi和预期结果段落级实体expresulti四类段落级实体;

9、进一步的,将段落级实体分解为句子级实体,定义句子尺度的句子级实体;

10、所述句子级实体的定义如下:

11、(precondi1,precondi2,…,precondim),m∈[0,m]

12、(funcstepi1,funcstepi2,…,funcstepin),n∈[1,n]

13、(expresulti1,expresulti2,…,expresultip),n∈[1,p]

14、其中,对于第i个测试用例,precondim代表第m条单项前置条件句子级实体;funcstepin代表第n条单项操作步骤句子级实体;expresultip代表第p条单项预期结果句子级实体。

15、进一步的,将句子级实体进行分解,定义词语尺度的原子实体;

16、所述原子实体包括:环境类实体、对象类实体、行为类实体、条件类实体。

17、所述环境类实体用于描述测试时所处的物理设备环境或软件配置环境,定义如下:

18、envic=(device,software)

19、式中,envic为环境类实体;device为设备类实体,表示进行测试的主机和辅助设备;software为软件类实体,表示进行测试的软件主体或辅助应用程序。

20、所述对象类实体用于描述手机测试时测试人员或测试脚本与手机的交互对象,定义如下:

21、objec=(interface,functionality,button,commonentity)

22、式中,objec为对象类实体;interface为界面类实体,表示测试过程中所操作和观察的界面或弹窗;functionality为功能类实体,表示测试过程中涉及的手机功能;button为按钮类实体,表示发生交互操作的ui按键;commonentity为通用类实体,表示测试过程中涉及的普遍对象。

23、所述行为类实体用于描述手机测试时测试人员或测试脚本与手机的交互动作以及交互前后的动作状态,定义如下:

24、behac=(transact,stateact)

25、式中,behac为行为类实体;transact为转移动作类实体,表示使目标对象发生状态转移的动作;stateact为状态动作类实体,表示测试使对象处于某种状态的动作。

26、所述条件类实体condc,用于描述在测试过程中对行为类behac实体和对象类objec实体的修饰或限制,是一种说明性的信息,往往是形容词或副词短语;

27、步骤1.2:构建层级间关系;

28、所述层级间关系表示段落级实体与句子级实体、句子级实体与原子实体间的包含关系,定义如下:

29、containrel=(s,t,rct)

30、式中,s进一步可以表示为(sp,ss),t进一步可以表示为(ts,ta);

31、其中,sp表示为(casename,precond,step,expresult),casename为用例名称段落级实体、precond为前置条件段落级实体、step为操作步骤段落级实体、expresult为预期结果段落级实体;ss和ts均表示为(precond,funcstep,expresult),进一步precond表示单项前置条件、funcstep表示单项操作步骤、expresult表示单项预期结果;ta代表原子实体集合,为(envic,objec,behac,condc),envic表示环境类原子实体、objec表示对象类原子实体、behac表示动作类原子实体、condc表示条件类原子实体;rct代表包含关系集合。

32、步骤1.3:构建层级内关系;

33、所述层级内关系表示同层级实体间的相互关系,段落级实体间相互独立,不考虑其层级内关系。

34、原子实体内部关系主要包括动作关系(execurel)和修饰关系(modifrel)2种,定义如下:

35、execurel=(ttrans,(to,te),rex)

36、modifrel=(tc,(ttrans,to),rmo)

37、式中,ttrans代表转移动作实体集合,te代表环境类实体集合,to代表对象类实体集合,rex代表动作关系集合,tc代表条件类实体集合,rmo代表修饰关系集合。

38、句子级实体内部关系主要包括并列关系、序列关系与结果关系;

39、所述并列关系定义如下:

40、clausrel=(spc,rpa)

41、所述序列关系定义如下:

42、sequerel=(sna,sfu,rse)

43、所述结果关系结果关系

44、resultrel=(sfu,sex,rre)

45、其中,spc代表单项前置条件实体集合,rpa代表并列关系集合;sna代表导航步骤实体集合,sfu代表单项功能步骤实体集合,rse代表序列关系集合;sex代表单项预期结果实体集合,rre代表结果关系集合。

46、进一步的,步骤2中实体提取的具体实现方式如下:

47、步骤2.1:以“\n”为段落分割符,将测试用例文本划分为段落,得到段落级实体;

48、以句号和分号为句子分割符,将段落文本分割为句子,将各句子分类,得到单项前置条件、单项操作步骤和单项预期结果三类句子级实体;

49、步骤2.2:将句子级实体分词,构建词汇表,对word2vec模型进行训练,从训练后的模型中提取各个词汇的词向量wvi;

50、步骤2.3:词语通常由多个字组成,基于bert模型得到字的嵌入向量;

51、以chinese-bert-wwm-ext作为中文预训练模型,将句子分解为单字组成的序列,经过tokenizer编码并输入到模型中,得到句子的特征向量;

52、对于每个字,可以得到其字向量为lvi。

53、步骤2.4:引入字符的拼音嵌入,将汉字转为拼音及声调,基于chinese-bert-wwm-ext模型,得到拼音嵌入向量pvi;

54、步骤2.5:字向量、词向量和拼音向量融合。将字向量、词向量和拼音向量按照列方向加权求和,通过设置不同权重来表示各类向量的重要性;

55、对于一个字,其融合后的字向量表示为:

56、cvi=λ*wvi+μ*lvi+ν*pvi

57、其中,cvi表示融合后的字向量;λ表示词向量权重、wvi表示词向量;μ表示字向量权重、lvi表示字向量;ν表示拼音向量权重、pvi表示拼音向量。

58、步骤2.6:将融合后的字向量cvi输入bilstm神经网络层进行特征提取,使用crf层来解码特征,获取准确度较高的命名实体所属类别的预测结果,并通过与数据原标签进行对比进行模型评价。

59、步骤2.7:mg-bilstm-crf模型训练。从全部句子级实体中随机抽取一部分句子进行人工标注,将句子中字符标注为步骤1中定义的device、software、interface、functionality、button、commonentity 8种类型。模型训练过程中选择交叉损失熵作为损失函数,以adam为训练优化器。所述损失函数的定义如下:

60、

61、其中,式中,n是样本的总数,c是类别的数量(本文中c=8)。yij是第i个样本的真实标签在第j类的指示函数,如果样本i属于类别j,则yij=1,否则yij=0,pij是模型预测的第i个样本属于第j类的概率。

62、进一步的,步骤3包括以下内容:

63、构建关系映射字典、句子级实体的分词与句法分析、关系映射与识别和关系补充、合并、去重;

64、步骤3.1:基于依存句法分析和语义依存分析构建关系映射字典;

65、基于依存句法分析和语义依存分析,结合测试用例文本的语法特征,构建兼顾原子实体识别与句法分析的关系映射字典。所述关系映射词典的定义如下:

66、dict={relation:[[classi,classj,type]]}

67、其中,dict表示关系映射字典;relation为原子实体间关系;classi和classj分别表示第i和j类原子实体类型;type表示dep或sdp的关系类型。

68、步骤3.2:对句子级实体进行中文分词和句法分析;

69、引入实体识别结果作为外部词典辅助进行中文分词;

70、借助相关依赖包对句子级实体依次进行中文分词、依存句法分析和语义依存分析,得到每个句子级实体的原子实体类型、依存句法树和语义依存树;

71、步骤3.3:关系类型识别;

72、根据每个句子级实体的原子实体类型、依存句法树、语义依存树,在关系映射字典中匹配存在的关系类型,并保存依存句法树与语义依存树中存在的并列关系。

73、步骤3.4:关系补充、合并、去重;

74、根据依存句法树与语义依存树中存在的并列关系,对潜在的原子实体间关系进行补充,再将根据依存句法树与语义依存树抽取到的两组关系进行合并和去重,得到最终关系识别抽取的结果。构建得到的关系表达为:

75、

76、其中,word1为原子实体1的词语,为原子实体1对应的实体类别;word2为原子实体2的词语,为原子实体2对应的实体类别;realtion为原子实体1和原子实体2之间的关系。

77、本发明还提供了一种面向手机测试用例的层级实体及关系提取系统,包括:

78、关系表达模型构建模块,用于获取多个手机测试用例文本,将每个手机测试用例文本分解为多个段落,进一步将段落分解为多个句子,继而将句子分解为多个词语,构建段落级实体、句子级实体和原子级实体三层实体表达模型;根据不同层级实体间存在的约束、限制和递进等关系,构建层级内关系及层级间关系表达模型;

79、原子实体提取模块,用于通过分段将测试用例文本分解为段落级实体,利用标点符号对段落文本分句,分解得到句子级实体。顾及原子实体的语义特征,建立词语、拼音、字符多粒度融合的名称实体识别模型,提取得到原子实体。

80、识别与抽取模块,用于基于原子实体识别结果,设计面向依存句法分析和语义依存分析的实体间关系的识别与抽取;

81、本发明产生的有益效果是:提供了一种面向手机测试领域知识的层级实体与关系提取方法。通过构建实体与关系表达框架,充分挖掘测试用例文本中的知识,为手机测试用例领域的知识理解提供一个统一的标准。并基于深度学习方法实现了实体的自动化提取,基于规则构建实现关系自动提取,实现了一种精度与速度兼顾的手机测试文本的实体与关系提取方法。

本文地址:https://www.jishuxx.com/zhuanli/20240822/280585.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。