将Android项目转换为AspectJ项目有什么意义(对于MonkeyTalk)

时间:2013-11-27 09:04:57

标签: android eclipse aspectj aop monkeytalk

使用AndroidEclipseIDE上开发了一个小应用程序,我想测试该应用程序的功能,经过长时间的RnD我发现MonkeyTalk是测试它的好工具, 要使用MonkeyTalk测试我的应用程序,我需要将我在eclipse上的项目转换为AspectJ项目,然后我可以使用MonkeyTalkIDE使用MonkeyTalk文件(* .mt)记录应用程序和回放操作,

我的问题是将Android project转换为AspectJ project的重要性是什么?

我一直关注AspectJ-Wikipedathis

我仍然感到困惑,为什么我们需要转换它们?

1 个答案:

答案 0 :(得分:3)

Monkey talk库正在使用面向方面编程(AOP)和aspectJ组合来获取当前任务,这就是他们添加的原因 <uses-permission android:name="android.permission.GET_TASKS" />
允许。现在使用此权限,他们可以访问应用程序当前活动及其视图。因此,每次更改时都会解析当前视图,并为这些视图添加新的侦听器。

在Android中,MonkeyJ代码由AspectJ方面调用 - 一些代码被“编织”到应用程序中并在调用cerain方法时被调用。在iOS中,使用“-all_load”链接器标志强制静态初始化MonkeyTalk。

这就是为什么必须有权访问应用程序源。但是,一旦编译了一个应用程序,一个不再需要源,并可以将APK切换到QA。