无痕可管理的源代码自动插桩方法

    公开(公告)号:CN102231109A

    公开(公告)日:2011-11-02

    申请号:CN201110198582.5

    申请日:2011-07-15

    Applicant: 南京大学

    Inventor: 张天 陈华杰

    Abstract: 一种无痕可管理的源代码自动插桩方法,步骤包括:40:开始,打开一个工程;41:定义一个文件过滤器,对所需插桩的工程进行匹配,保留匹配的工程;42:接着使用所述文件过滤器对被插桩的源文件进行过滤;43:选择自动插桩的具体应用类型,定义相应类型所需插桩的代码;44:用语法树结构匹配,根据自动插桩的具体应用类型进行相应插桩点的位置定位,并在相应位置插入代码,生成一个新源文件;45:所述新源文件进行编译产生新的可执行字节码文件,并保存;46:生成可执行文件,结束。本方法主要特点为插桩代码可视化、集中管理插入代码、插桩过程无痕化、插桩点自动化定位、自动插桩可扩展、自动插桩高效性。

    一种仅基于图像的非侵入式跨平台测试迁移方法

    公开(公告)号:CN118035103A

    公开(公告)日:2024-05-14

    申请号:CN202410221589.1

    申请日:2024-02-28

    Applicant: 南京大学

    Abstract: 本发明公开一种仅基于图像的非侵入式跨平台测试迁移方法,该方法通过录制测试脚本在源平台应用上的执行过程,利用目标检测技术识别目标平台应用中存在的控件,并基于控件视觉特征进行控件映射,获取目标控件,当GUI脚本在跨平台场景下失效时,基于图像预测控件语义,进而自动化地调整测试事件序列,使其适用于目标平台应用,所述方法与移动设备的交互动作通过机械臂来完成。采用本方法,可以解决现有跨平台测试迁移方法无法有效处理GUI脚本因设备和平台变更而失效的问题。

    一种基于双向重构的控制结构对齐方法

    公开(公告)号:CN116775474A

    公开(公告)日:2023-09-19

    申请号:CN202310703977.9

    申请日:2023-06-14

    Applicant: 南京大学

    Abstract: 本发明公开了一种基于双向重构的控制结构对齐方法,包括以下步骤:输入两个程序和目标函数作为方法的输入;设计表示程序目标函数控制流结构的抽象控制流树模型;分别构建两个源程序中目标函数的抽象控制流树模型;设计抽象控制流树模型中节点的合法匹配规则;构建两个源程序中目标函数的抽象控制流树模型中的节点间“最长”的合法匹配集合并从中选出最优匹配;设计通用的程序重构规则;基于最优匹配重构两个源程序的目标函数,以实现控制结构对齐,得到重构后的程序。本方法可以为两个控制结构不一致的程序在程序语义不发生改变的前提下提供双向重构指导,实现目标函数的控制结构的对齐,从根本上解决了现有自动反馈生成技术无法为未结构匹配的错误程序提供修复指导的缺陷。

    一种基于对称拼写检查的软件语义优化方法及系统

    公开(公告)号:CN116702759A

    公开(公告)日:2023-09-05

    申请号:CN202310559131.2

    申请日:2023-05-18

    Applicant: 南京大学

    Abstract: 本发明公开了一种基于基于对称拼写检查的软件语义优化方法及系统,该方法步骤S1:获取预训练词典和单词错误阈值;S2:生成备选词典;S3:获取输入的文本数据;S4:从文本数据中分词;S5:对S4步骤得到的每个单词分别进行拼写检查修改;S6:输出整体的修改文本作为结果。本发明通过对软件程序语义中的错误单词进行修改,生成的新的正确单词,增强后续程序分析中的单词的可理解性。本发明中,单词在词典中的查询采用的是哈希表查询,使用了布隆过滤器装置加快了查询的时间。其中,修改意见是根据单词的频率给出的,单词的频率为领域内大数据中所获取,不需要统计。

    基于界面草图的应用检索方法和装置

    公开(公告)号:CN111273905B

    公开(公告)日:2023-04-18

    申请号:CN202010050903.6

    申请日:2020-01-17

    Applicant: 南京大学

    Inventor: 潘敏学 张天

    Abstract: 本发明公开了基于界面草图的应用检索方法和装置。该方法对输入的图像进行预处理后,通过对预处理后的图像进行递归分割,对各分割后的图像识别边缘矩形框,然后识别边缘矩形框内的图元标识,根据图元标识对应的控件种类识别出各种类型的控件,并根据边缘矩形框的位置确定该控件在界面上的位置,结合递归的层次关系组成用以表示控件间的层次布局的控件布局树,然后将该生产的控件布局树与应用库中各应用对应的控件布局树进行布局树相似度值计算,根据布局树相似度值是否大于阈值得到匹配的应用。软件研发人员可以依据本发明的方法和装置检索相似的界面的应用,为设计软件图形应用界面提供便利。

    一种基于图节点嵌入的软件系统架构恢复方法

    公开(公告)号:CN115185728A

    公开(公告)日:2022-10-14

    申请号:CN202210820883.5

    申请日:2022-07-13

    Applicant: 南京大学

    Inventor: 蒋雨宸 张天

    Abstract: 本发明公开一种基于图节点嵌入的软件系统架构恢复方法,主要包括提取文件依赖关系图、随机游走图节点嵌入、k‑means聚类三个部分,具体步骤为:分析软件系统源码,接收系统的源码文件作为输入;基于特定编程语言和粒度粗细,提取软件系统中文件之间的依赖关系;通过文件之间的依赖关系构建依赖图,然后使用随机游走算法提取图结构信息,基于节点在采样序列中的上下文将图节点嵌入到向量空间;获得图节点的向量表示之后,使用k‑means算法进行聚类,聚类结果将source code划分到不同的module簇,作为本方法的输出。本方法具有可伸缩性强,系统架构恢复效果好的特点,且本方法后续利用价值较大。

    一种在App之间移植GUI测试代码的方法

    公开(公告)号:CN114936162A

    公开(公告)日:2022-08-23

    申请号:CN202210636888.2

    申请日:2022-06-07

    Applicant: 南京大学

    Abstract: 本发明公开了一种在App之间移植GUI测试代码的方法,包括以下步骤:输入两个App和其中一个App的GUI测试代码,命名为源App、源GUI测试代码、目标App;设计表示App运行时状态及其变化关系的模型;改造并使用App测试框架在源App上执行源GUI测试代码,使用得到的信息建立源App的状态转移路径;改造并使用App自动探索工具运行目标App,使用得到的信息建立目标App的状态转移图;使用贪心搜索回退法为源App的状态转移路径在目标App的状态转移图上匹配一条相似的状态转移路径;最后将得到的状态转移路径翻译成适用于App测试框架的GUI测试代码。

    一种界面跳转路径图的合并方法和装置

    公开(公告)号:CN113946334A

    公开(公告)日:2022-01-18

    申请号:CN202111231486.6

    申请日:2021-10-22

    Applicant: 南京大学

    Abstract: 本发明公开了一种界面跳转路径图的合并方法和装置。该方法将自动化测试工具对UI应用界面测试所产生的各界面跳转路径通过对界面场景的相似度分析,将相似的界面场景节点合并,从而将各界面跳转路径合并,生成合并后的界面跳转路径图,从而减少了后续分析的复杂性。本发明中,界面场景相似度分析时,采用界面截图和控件布局相似度比较相结合的方法。其中,界面截图相似度计算时,通过卷积神经网络提取特征向量,然后通过特征向量之间的距离作为界面截图相似度;控件布局相似度计算时,将控件布局转换成简化的布局文本,然后计算布局文本之间的文本相似度。

    基于草图的移动应用模型查询方法

    公开(公告)号:CN113010741A

    公开(公告)日:2021-06-22

    申请号:CN202110339294.0

    申请日:2021-03-30

    Applicant: 南京大学

    Abstract: 本发明属于软件工程领域与计算机视觉领域,具体为一种基于草图的移动应用模型查询方法,预定义的草图模型语言为一组基于IFML设计的移动应用布局控件符号语言,且已经建立了一个按照IFML模型规则设计的多维数据融合软件资产库(AppRepo);具体步骤为:用户在纸上根据预定义语言绘制的多UI跳转草图作为本发明的输入,经过预设的识别技术获得草图内静态UI与动态跳转信息;其次通过静态草图UI与库中UI的基本相似性计算结合T步相似性更新定位锚点后,将草图模型与库中模型进行相似度排名;最后模型相似度排名靠前的移动应用结果即为本方法的输出;本方法能有效地将一张多UI跳转草图匹配到一个移动应用的全部或局部。

    一种面向偏好设置的安卓应用测试方法

    公开(公告)号:CN110209593B

    公开(公告)日:2021-05-28

    申请号:CN201910515637.7

    申请日:2019-06-14

    Applicant: 南京大学

    Abstract: 本发明提出了一种面向偏好设置的安卓应用测试方法。首先对待测应用的可执行文件进行静态程序分析,以得到应用中定义的所有偏好设置与其属性。随后在已有测试用例上,通过动态程序分析的方式获得各测试用例中相关联的偏好设置。对于每条测试用例,可测试所有相关偏好设置与其可能输入的组合,来实现面向偏好设置的测试。最后为了降低这一测试的成本,本发明提供了一种目标导向的执行模式,它将测试用例的代码分割为基本块,将基本块与其相关的偏好设置的输入组合作为测试目标。依照贪心算法,本发明选取覆盖最多的测试目标的测试用例与偏好设置的组合进行测试,从而减少各测试用例下重复的偏好设置输入组合的测试,大大降低测试成本。

Patent Agency Ranking