目录
十二:如果Monkey测试发现了某个应用程序的问题,您是如何解决它的?
1:下载android-sdk_r24.4.1-windows
2:下载Java
3:配置环境变量:关于怎么配置环境变量(百度一下:monkey环境搭建,)
1:基本命令:
adb shell monkey
注:在这个操作之前,设备必须要电脑连接,如图:
2:monkey高级参数应用
Seed实践
1:首先要打开待测得apk,然后在命令行里面输入:
adb shell dumpsys activity | find “mFocusedActivity”,获
取要测试的APP包名,如图:
以计算器为例,测试
命令:
adb shell monkey –p com.android.calculator2 –v 100
注:-p: 用此参数指定一个或多个包。指定包之后,monkey将只允许系统启动指定的app。
-v:用亍指定反馈信息级别(信息级别就是日志的详细程度),总共分3个级别
如图:
用亍指定伪随机数生成器的seed值,如果seed相同,则两次Monkey测试所产生的事件序列也相同的
命令:
adb shell monkey –p com.android.calculator2 –v 1000
执行过程出现程序报错,
如图的意思:在执行第七次时,随机数生成器的seed值,如:seed值后面的数值。Seed值一般用于复现现象,比如说:当程序出现报错时,会随机生成seed值,此时只要在命令中加入seed值,就能复现问题。
输入:
adb shell monkey -p com.android.calculator2 -s 1262865229687 1000
用亍指定用户操作(即事件)间的时延,单位是毫秒;如果指定这个参数,monkey会尽可能快的 生成和发送消息
输入:
adb shell monkey -p com.android.calculator2 –-throttle 3000 100
--ignore-crashes,
做APP压力测试12小时,会出现各种程序报错和异常,需要加入:以下参数:
输入:
adb shell monkey -p com.android.calculator2 --ignore-crashes –v –v 100000
即使出现程序报错异常,也照常测试,不会停止测试
--ignore-timeouts
做APP压力测试12小时,会出现各种程序报错和异常,需要加入:以下参数:输入:
adb shell monkey -p com.android.calculator2 --ignore-timeouts –v –v 100000
即使出现程序超时等待,也照常测试,不会停止测试
Monkey 日志结果分析
1:crash结果析取
实践过程:1:安装待测试的APP
2:执行压力命令
3:析取crash的Exception的信息
例子:
adb shell monkey -p com.android.calculator2 -v -v 1000 >D:123.txt
在测试计算器时,出现报错,可以查看log日志,在日志中搜索“”crash“”关键字
截取crash之后的log信息,提供给开发工程师,分析原因
2:1:ANR结果析取
实践过程:1:安装待测试的APP
2:执行压力命令
3:析取ANR的Exception的信息
例子:
adb shell monkey -p com.android.calculator2 --ignore-crashes -v -v 10000 >D:123.txt
在测试计算器时,出现程序无响应时,可以查看log日志,在日志中搜索“”crash“”关键字
Monkey参数大全,请参考:百度
http://www.cnblogs.com/bixiaopeng/articles/2149904.html
Monkey测试可以测试以下方面的功能:
应用程序的稳定性:Monkey测试可以测试应用程序的稳定性,避免应用程序崩溃或出现错误。
用户界面:Monkey测试可以测试应用程序的用户界面,包括按钮、文本框、滑动条、图标等等。
资源管理:Monkey测试可以测试应用程序的资源管理能力,包括内存、CPU使用情况等。
应用程序的兼容性:Monkey测试可以测试应用程序在不同版本的操作系统、不同型号的手机以及不同语言环境下的兼容性。
应用程序的安全性:Monkey测试可以测试应用程序的安全性,发现可能存在的漏洞和风险。
其他功能:Monkey测试还可以测试应用程序的性能、响应速度、网络连接、数据存储等等。
在Monkey测试期间,应该注意以下几个方面的问题:
确保测试设备的安全:由于Monkey测试会随机触发各种操作,因此执行Monkey测试时需要注意测试设备的安全问题,避免发生数据丢失等问题。
指定测试包范围:在进行Monkey测试时,需要指定测试包的范围,避免对系统中不需要测试的应用程序造成干扰。
配置Monkey测试参数:Monkey测试需要指定各种参数,如事件频率、随机种子等,这些参数需要根据具体情况进行配置。
监测测试结果:在执行Monkey测试时需要实时监测测试结果,分析测试日志,及时发现问题并解决。
根据测试结果进行优化:根据Monkey测试的结果,优化应用程序,提高其稳定性和可靠性。
Monkey测试是一种随机测试方法,通过随机输入来模拟用户的操作,测试应用程序的稳定性。其优点和缺点如下:
优点:
缺点:
因此,在进行Monkey测试时,需要综合考虑其优点和缺点,选择合适的测试场景和参数,结合其他测试方法进行全面测试。
要监控和记录Monkey测试的结果,可以采取以下措施:
1、使用ADB工具来捕获Monkey测试期间的日志和事件流。使用以下命令在终端窗口中启动Monkey测试,并将结果输出到一个文本文件中:
adb shell monkey -p com.example.app -v 5000 > /sdcard/monkey_results.txt
2、在测试应用程序中添加日志记录,以便在测试期间捕获和记录关键信息。可以使用logcat命令来查看测试期间的日志。
adb logcat <package_name>:<log_level> *:S
3、使用第三方测试软件(例如Appium和UIAutomator),以可视化的方式记录Monkey测试期间的结果。这些工具提供了丰富的日志记录和结果报告功能。
4、手动检查应用程序的行为和性能,以查看是否有任何不寻常的行为或错误。
Monkey测试主要是随机生成用户行为,并触发应用程序的各种功能,因此可以对测试用例的覆盖率产生一定的影响。具体来说,Monkey测试可以帮助发现应用程序中的一些难以被手动测试到的问题,比如在异常情况下的崩溃、内存泄漏、死锁等。通过记录Monkey测试的执行过程和结果,可以生成一些新的测试用例,进一步提高测试用例的覆盖率和软件的稳定性。但是,需要注意的是,Monkey测试并不是万能的,它也有其局限性,只能发现一部分问题,而且测试过程中可能会产生误报和漏报。因此,在进行Monkey测试时,需要结合其他测试方法一起使用,以提高测试效果和测试用例的覆盖率。
如果Monkey测试发现了某个应用程序的问题,以下是一些可能的解决方案:
重现问题:尝试重现Monkey测试时发生的问题。如果能够重现问题,那么可以更容易地确定问题的原因,并采取适当的措施来解决它。
日志分析:通过分析应用程序的日志,查看是否有任何错误或异常信息,这可以帮助确定问题的原因。可以使用Android Studio或其他一些工具来查看日志。
代码检查:检查应用程序的代码,查看是否存在一些可能导致问题的代码。也可以使用代码静态分析工具来检查应用程序的代码。
修复代码:对于发现的问题,需要修复应用程序中的代码。修复后,可以重新进行Monkey测试,以确保问题已经得到解决。
单元测试:针对可能引起问题的代码,编写单元测试用例进行测试。这可以确保在修复问题后,应用程序没有引入新的问题。
定期进行Monkey测试:持续进行Monkey测试,并将测试结果记录下来。这有助于发现潜在的问题,并及时解决它们。
要保证Monkey测试的可靠性和有效性,可以考虑以下几个方面:
确定测试范围和测试目标,根据测试目标制定测试计划和测试用例。
在测试前准备好测试环境,包括设备、软件和测试数据等。
在测试过程中记录测试结果和日志,以便分析和排查问题。
调整Monkey测试工具的参数,包括事件数量、事件类型、事件时间间隔等,以最大程度地覆盖应用的功能和场景。
对测试结果进行分析和评估,根据测试结果调整测试用例和参数,提高测试覆盖率和效果。
在测试结束后及时总结经验,记录并反馈测试中发现的缺陷和问题,以便后续优化和改进。
结合其他测试方法,如手工测试、自动化测试等,进行综合测试,提高测试质量和效率。
Monkey测试是一种随机测试方法,旨在测试应用程序的稳定性和可靠性。要制定有效的Monkey测试策略,您可以遵循以下步骤:
确定测试环境和设备:确定应用程序运行的操作系统版本和设备,并确保测试设备已正确配置。
定义测试场景:根据应用程序的功能和用户需求,确定需要测试的场景,例如输入、滚动、点击、旋转等。
设置测试参数:设置Monkey测试的参数,如事件频率、事件类型、测试时间和包含的应用程序等。
创建测试计划:编写一份详细的测试计划,包括测试场景、测试参数和测试结果的分析方法。
执行Monkey测试:在测试环境中执行Monkey测试,记录测试结果并生成测试报告。
分析测试结果:分析测试结果,确定应用程序中存在的错误和问题,并创建缺陷报告。
提交缺陷报告:将缺陷报告提交给开发团队,以协作解决问题。
总之,制定有效的Monkey测试策略需要深入了解应用程序的功能和用户需求,同时需要充分考虑测试环境和测试参数。