测试基础 求助:monkey 源码打 jar 包后执行 shell 命令不成功

· 2016年07月12日 · 最后由 yujian0501 回复于 2021年09月17日 · 3617 次阅读

1.下来源码后,在 idea 中将源码打成 jar 包,放到 framework 下运行,命令执行不成功
2.我的 idea 源码目录如下:
缺了几个引用类,不过也能打包成功我就没管。
然后是:
1.用自带的 monkey.jar 执行会有内容输出,
2.用我源码打包后的 monkey.jar 执行就没有任何内容输出
本身我只是想先确保能将 moneky 源码打包并执行成功,所以 monkey 的源码是没有做过任何修改的,所以我怀疑是打包的过程或者哪里的步骤出错了
打包的过程见下图

求个大神帮我看看是哪里出了错。
源码是从 github 上下载的,不会有问题。

共收到 28 条回复 时间 点赞
#1 · 2016年07月12日 Author

折腾了好几天,查了好多资料没搞出来。。求个移动端测试的高手帮忙看看

需要在 android 的 framework 下面编译打包

#2 楼 @kasi 那就是必须源码环境么

@jira 对的,系统自带的必须在系统环境下面编译打包

#5 · 2016年07月12日 Author

#4 楼 @kasi 那就是说我要下 framework 的源码,再把 monkey 放进去 framework 的源码工程,再打 monkey 的 jar 包?

#8 · 2016年07月12日 Author

#6 楼 @kasi 谢谢,我去试试

楼主可不可以给个 monkey 源码链接,我也想改下 monkey 的源码

楼主是想在移动端执行 monkey 么

#12 · 2016年07月12日 Author

#10 楼 @jira 是,现在有空就自学下这个。😎

#12 楼 @zyj_1990 哦 一起交流哈

#14 · 2016年07月12日 Author

#6 楼 @kasi 再请教下老司机,我把monkey 放在这个目录下,然后编译导出 jar 包的时候一直报 Error:Android Pre Dex: [32] Android SDK is not specified。指定了 sdk 貌似也没用。不知道咋办

#4 楼 @kasi 我已经有现成的乌班图下的源码环境,请问怎么编译出 jar 包?有没有参考连接,谢谢哈

没记错的话是先打一个 framework 的包出来,在 framework 里面进行提取,你们可以自行 google 一下

额。。不是这样打的,在 ubuntu 下面,需要在根目录 make monkey,然后在一个 output/monkey.jar 可以找到。然后 push 到 framework 里

#17 楼 @monkey make monkey 有教程么?我直接在 monkey 源码下 mmm 失败

#18 楼 @jira 额。。这个我还真不知道有没有。步骤差不多是

  1. 你弄一个 ubuntu 的 OS
  2. 你下载 Android 源码
  3. 根目录 make monkey
  4. 去到某个 path 找到 monkey.jar
  5. push 到 Android 里去
  6. 然后就可以用了。。。
#20 · 2016年07月13日 Author

#15 楼 @jira 你自己搭的啊?我查了下那个环境搭起来好像挺复杂 =。=||,我到时候要请教你了

#20 楼 @zyj_1990 不是 同事搭的

想问一下题主,成功了么,我是在 windows 下打的 jar 包,然后生成.dex 文件,在压缩为 jar 文件,放到手机目录下的,但是貌似没起作用。。

所以楼主最后是用哪种方式编译的?

#25 · 2018年07月23日 Author
xdefine 回复

把 android 整个源码拷到 linux 虚拟机,然后环境配好,执行编译命令,这样出来的

#3 · 2018年07月23日 Author
xdefine 回复

成功了,用整个 android 源码拷到虚拟机里编译,别用 windows,用 linux。

回复

楼主 编译出 jar 包后 如何 运行呢?

请问下编译得到 monkey.jar 后如何运行这个 jar 文件呢?大家讨论的好像都是将这个文件放到手机系统目录中的 framework 目录下,但是这个需要 root 权限。另一种是将生成的 framework.jar 和 monkey.jar 放到 sdcard 目录下,然后执行 adb shell CLASSPATH=/sdcard/monkey.jar:/sdcard/framework.jar exec app_process /system/bin com.android.commands.monkey.Monkey -p app 的包名 ,但是执行后没反应。有哪位大佬提供个解释吗?

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册