首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到18条相似文献,搜索用时 171 毫秒
1.
汤杨  曾凡平  王健康  黄心依 《计算机应用》2016,36(10):2811-2815
针对传统软件安全测试方法(例如:符号执行、模糊测试、污点分析等)无法获得较高的Android程序图形用户界面(GUI)覆盖率的问题,提出动态和静态相结合的Android程序测试方法。该方法在静态分析Android应用程序数据流的基础之上,构建程序活动转换图和函数调用图,解析程序GUI元素,进而编写测试脚本动态遍历应用程序GUI元素。将该方法应用于订票日历、WiFi万能钥匙和360天气应用的实际测试,结果表明:Activity的平均覆盖率达到76%,明显高于人工测试的平均值30.08%和基于控件树遍历的42.05%~61.29%,该方法能够有效遍历Android应用程序GUI元素。  相似文献   

2.
近来针对Android应用程序的基于GUI(图形用户界面)的分析和测试方法已经成为一个研究热点. 自动化技术和较高的GUI覆盖率可以提高大部分方法的效率和效果. 然而以前的工作并不能充分满足自动化和高GUI覆盖率的要求. 提出了一种在不需要程序源代码的情况下遍历Android应用程序GUI的自动化方法. 其主要思想是通过模拟用户的行为自动探测Android应用程序的GUI. 我们的工作主要解决了UI元素提取和处理、用户行为模拟、GUI遍历算法设计和模型构建三方面中的一些关键问题. 实验结果表明, 该方法能获得较高的GUI覆盖率可以有效遍历应用程序的GUI. 此外, 该方法也将有助于程序安全分析、GUI测试等其他研究.  相似文献   

3.
叶佳  葛红军  曹春  朱晋  张营 《计算机科学》2018,45(9):99-103, 118
GUI自动化测试是Android应用研究领域的重要组成部分,针对Android应用的GUI测试技术得到了广泛的研究。其中,基于DFS算法的GUI遍历测试技术得到了广泛的应用。然而,现有的DFS测试技术却仍然具有效率低下、覆盖率较低的问题。文中提出了结合外部预定义规则来驱动DFS自动化遍历的改进方法,以提高DFS自动化遍历的效率和覆盖率;基于规则驱动的改进方法实现了RDTA测试工具,进行了与Monkey以及无规则驱动下的DFS的对比实验,验证了该方法的有效性。  相似文献   

4.
在移动应用的开发周期中,使用图形用户界面(GUI)自动化测试技术可提高APP的开发测试效率。针对基于录制回放的GUI自动化测试方法存在不适用黑盒测试场景或识别正确率较低等不足,提出基于图像文字识别和应用页面布局的控件识别算法。根据移动应用的页面布局结构和手势操作坐标精确识别控件,采用控件树遍历的方式解决遍历过程中的页面布局重叠问题。分别在Android和iOS 2个平台进行实验,结果表明,与基于坐标和源代码的控件识别算法相比,该控件识别算法具有更高的正确率。  相似文献   

5.
针对嵌入式GUI软件自动化测试,提出一种非侵入的GUI自动化测试系统设计方案,能够使用Python格式的测试脚本灵活描述测试用例的执行步骤,能够自动化执行测试脚本;系统将人机交互步骤转成鼠标键盘模拟设备的控制命令,实现对被测软件鼠标键盘的控制,从而输入需要的人机交互信息,实现测试用例的自动执行;同时以不干扰被测系统为原则,直接采集被测系统输出到显示器中的视频数据,通过对图像数据的处理进行图像对比、图像查找和文字识别,根据测试用例预期输出自动判断用例的执行结果;该测试系统解决了嵌入式软件GUI自动化测试的难题,提高了测试效率。  相似文献   

6.
嵌入式软件GUI自动化测试平台研究   总被引:1,自引:1,他引:0  
为实现嵌入式软件的GUI自动化测试,对嵌入式软件GUI自动化测试现状深入分析,提出了一种无侵入式的GUI自动化测试框架,利用图像采集与信息识别技术实现测试用例结果判断;利用键盘鼠标模拟技术模拟测试用例执行的人机交互;利用脚本语言嵌入技术实现用例编辑与转换、利用嵌入式软件GUI测试自动化控制技术实现用例的自动驱动与执行;在此基础上,设计并研发了嵌入式软件GUI自动化测试平台,能够方便、有效地实现无侵入式的嵌入式GUI自动化测试.  相似文献   

7.
基于马尔可夫链等统计模型进行GU I测试是目前最有效的GU I自动化测试方法之一,但目前的方法在开始测试前需要很多前置条件,且要花费大量时间做静态分析等准备工作,从而导致测试效率和自动化水平不高.提出一种基于行为树的GU I自动化随机测试方法,该方法不需要进行静态分析,只需通过统计模型从用户使用日志中创建行为树模型,且可以动态地对行为树模型进行更新,以增加用户很少或从未使用过的事件的概率.对三种开源Android应用程序的评估,以及和其他GUI自动测试方法的比较结果显示:提出的Android应用GUI自动化随机测试方法具有很好的效果.  相似文献   

8.
移动应用软件已经拥有了数以千万计的用户群体.根据最新统计,Android手机以85.1%的市场占有份额,成为了最受欢迎的移动端设备.Android应用软件的快速开发,使得如何保证程序质量,成了难题.我们不仅要考虑程序的正确性,也应保证运行时的流畅性.现有的性能研究工作都基于传统的静态分析或者动态执行.对于Android程序,静态分析具有一定的局限性,而动态分析又忽略了APP执行时的遍历方式.因此,本文提出了基于GUI的Android自动化性能测试框架,将着重关注页面状态和APP状态的相关性.通过对页面的分析,聚合,尽可能遍历到APP的各个状态,然后从日志中,找出APP性能上的问题.本框架使用Java作为开发语言,搭建了Android移动软件自动化性能测试框架,并在开源社区F-Droid上随机抽取了移动应用软件进行实验.实验表明,该技术能更多的遍历APP的状态,发现APP在运行过程中出现的性能问题,取得良好的效果.  相似文献   

9.
随着移动互联网的快速发展,针对移动平台尤其是Android平台的恶意代码威胁也日益严重。恶意代码分析方法包括静态分析和动态分析两大类。由于静态分析方法难以处理一些经过变形、加密、混淆等技术处理的代码,动态分析已经成为了恶意代码分析领域的发展热点。现有的Android平台动态分析技术存在着分析环境易被识别、分析的代码覆盖率难以保证等问题。如何触发Android平台恶意代码的恶意行为,提高动态分析的全面性是保证动态分析效果的关键问题之一。提出基于UI自动遍历的Android恶意代码动态分析办法,可在一定程度上解决此问题。该方法结合Android平台自身的特色,基于UI元素自动构造不同的执行路径,可有效提高代码分析的全面性。  相似文献   

10.
当前Android恶意应用程序在传播环节缺乏有效的识别手段,对此提出了一种基于自动化测试技术和动态分析技术的Android恶意行为检测方法。 通过自动化测试技术触发Android应用程序的行为,同时构建虚拟的沙箱监控这些行为。设计了一种组合事件行为触发模型——DroidRunner,提高了Android应用程序的代码覆盖率、恶意行为的触发率以及Android恶意应用的检测率。经过实际部署测试,该方法对未知恶意应用具有较高的检测率,能帮助用户发现和分析未知恶意应用。  相似文献   

11.
基于事件流图的用户界面测试优化   总被引:2,自引:1,他引:1  
路斯瑶  胡飞 《测控技术》2010,29(5):72-76
针对目前用户图形界面(GUI)自动化测试对于代码和开发语言的依赖,以及捕捉/回放工具中存在的手工依赖和对测试用例测试覆盖率缺乏系统管理的问题,基于事件流图理论,提出了不依赖于代码静态分析的GUI自动化测试方法。在没有程序代码的前提下,利用WinRunner工具通过鼠标动作获得GUI组件,利用自行开发的工具自动分析GUI窗口层次,定义事件属性和测试用例生成规则,自动生成了完备测试用例集,并通过实例验证了方法的有效性。  相似文献   

12.
The increasingly prevalent use of mobile devices has raised the popularity of mobile applications. Therefore, automated testing of mobile applications has become an extremely important task. However, it is still a challenge to automatically generate tests with high coverage for mobile applications due to their specific nontrivial structure and the highly interactive nature of graphical user interfaces (GUIs). In this paper, we propose a novel automated GUI testing technique for mobile applications, namely, Mobolic. In this approach, tests with high coverage are automatically generated and executed by combining the online testing technique and customated input generation. Employing the online testing technique, Mobolic systematically explores the app GUI without falling in a loop. It generates relevant events “on the fly” that are followed by an immediate execution. In addition, involving the customated input generation, Mobolic automatically generates relevant user inputs such as user‐predefined, concrete, or random ones. We implemented Mobolic and evaluated its performance on 10 real‐world open‐source Android applications. Our experimental results show the effectiveness and efficiency of Mobolic in terms of achieved code coverage and overall exercising time.  相似文献   

13.
为了解决基于深度学习的GUI元素识别方法表现不佳以及无法判断是否可触控的问题,提高GUI测试的效率与覆盖率,提出有效的面向GUI测试的可触控控件训练与检测方法。首先定义可触控控件的检测类别,用于直接检测具备可触发属性的控件;考虑到UI页面存在堆叠元素,对数据集中不可见的控件进行过滤,并剔除视图层次结构与屏幕截图不同步的数据;通过分析安卓机制将UI页面中可触控控件进行了标记。最后基于YOLO v5s训练获得一个轻量级训练模型。结果表明,提出的训练及检测方法优于现有深度学习方法和经典方法,其F1达到了82%,在GUI测试中具有良好的使用价值。  相似文献   

14.
从控件的信息入手,研究了界面的控件间功能交互关系,提出了基于交互图的GUI测试方法,并开发了一个基于交互图的GUI测试工具GUITester.它能自动生成交互图和测试用例,大大提高了GUI软件测试的效率和覆盖率.  相似文献   

15.
张博刚  张威  陈月宁  廖飞雄 《计算机应用》2010,30(10):2749-2753
为提高GUI自动化测试的覆盖率、故障定位的速率和精度,以及检测由于时空变化导致的空间错误引起的故障,建立基于运行监测的GUI自动化测试模型。模型将GUI分为窗口框架层、界面元素层、功能结构层和运行记录层四层。窗口框架层描述GUI所有窗口,界面元素层描述用户输入,功能结构层提出功能覆盖准则,运行记录层通过插桩记录代码动态监测软件每一次执行时路径和各个窗口的运行状态,从而提高测试的覆盖率,并根据运行记录中窗口的总执行次数和正确的执行次数为可靠性计算提供依据。由于监测代码的运行情况,因此故障能够定位到代码级,提高故障定位的精度和速率。最后以记事本程序为例验证了模型的有效性。  相似文献   

16.
Repackaging brings serious threats to Android ecosystem.Software birthmark techniques are typically applied to detect repackaged apps.Birthmarks based on apps'runtime graphical user interfaces(GUI)are effective,especially for obfuscated or encrypted apps.However,existing studies are time-consuming and not suitable for handling apps in large scale.In this paper,we propose an effective yet efficient dynamic GUI birthmark for Android apps.Briefly,we run an app with automatically generated GUI events and dump its layout after each event.We divide each dumped layout into a grid,count in each grid cell the vertices of boundary rectangles corresponding to widgets within the layout,and generate a feature vector to encode the layout.Similar layouts are merged at runtime,and finally we obtain a graph as the birthmark of the app.Given a pair of apps to be compared,we build a weighted bipartite graph from their birthmarks and apply a modified version of the maximum-weight-bipartite-matching algorithm to determine whether they form a repackaging pair(RP)or not.We implement the proposed technique in a prototype,GridDroid,and apply it to detect RPs in three datasets involving 527 apks.GridDroid reports only six false negatives and seven false positives,and it takes GridDroid merely 20 microseconds on average to compare a pair of birthmarks.  相似文献   

17.
基于用户操作的事件流模型构建方法研究   总被引:1,自引:1,他引:0  
随着GUI的应用越来越广泛,GUI软件的功能性测试变得越来越重要,它是确保整个系统安全性、可用性和鲁棒性的重要因素。虽然测试人员对GUI软件的自动测试技术研究比较多,但基于模型的自动化技术却很少能用于实践中,关键原因是研究人员提出的模型在应用方面具有其局限性,更重要的是,构造模型是一个非常困难的过程。在手动测试不可或缺的情况下,提出了通过录制用户操作来构建事件流模型的方法,方法实现模型简单准确,通过模型可以生成大量有效的测试用例,提高测试GUI软件功能的充分性。  相似文献   

18.
This work develops a static analysis to create a model of the behavior of an Android application’s GUI. We propose the window transition graph (WTG), a model representing the possible GUI window sequences and their associated events and callbacks. A key component and contribution of our work is the careful modeling of the stack of currently-active windows, the changes to this stack, and the effects of callbacks related to these changes. To the best of our knowledge, this is the first detailed study of this important static analysis problem for Android. We develop novel analysis algorithms for WTG construction and traversal, based on this modeling of the window stack. We also propose WTG extensions to handle certain aspects of asynchronous control flow. We describe an application of the WTG for GUI test generation, using path traversals. The evaluation of the proposed algorithms indicates their effectiveness and practicality.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号