Какое значение имеет преобразование проекта Android в проект AspectJ (для MonkeyTalk)
Разработали небольшое приложение на Android
с помощью EclipseIDE
и я хотел проверить это приложение на функциональность, после долгого RnD я нашел MonkeyTalk
хороший инструмент для проверки этого, чтобы проверить мое приложение с помощью MonkeyTalk
мне нужно преобразовать свой проект на затмение в AspectJ
проект, тогда я могу использовать MonkeyTalkIDE
записывать действия над приложением и воспроизводить их с помощью файла MonkeyTalk (*.mt),
Мой вопрос в том, какое значение имеет преобразование моего Android project
в AspectJ project
?
Я искал на AspectJ-Wikipeda и это.
Тем не менее у меня есть путаница, почему мы должны преобразовать их?
1 ответ
Библиотека разговоров Monkey использует комбинацию аспектно-ориентированного программирования (AOP) и aspectJ для получения текущей задачи, поэтому они добавляют<uses-permission android:name="android.permission.GET_TASKS" />
разрешение. Теперь, используя это разрешение, они могут получить доступ к текущей активности приложения и его представлению. Таким образом, они анализируют текущее представление каждый раз, когда оно изменяется, и добавляют новый прослушиватель для этих представлений.
В Android код MonkeyTalk вызывается аспектами AspectJ - битами кода, которые "вплетаются" в приложение и вызываются при вызове методов cerain. В iOS MonkeyTalk инициализируется статически, принудительно используя флаг компоновщика "-all_load".
Вот почему нужно иметь доступ к источнику приложения. Но как только приложение скомпилировано, ему больше не нужен исходный код, и он может передать APK в QA.