热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

app测试梳理

安卓app内存不足时,如何获取内存  系统优先结束被挂起(暂停)的进程,释放内存   app测试常见问题有哪些?原因有哪些  常见问题:     crash      ANR(应用

安卓 app 内存不足时,如何获取内存
    系统优先结束被挂起(暂停)的进程,释放内存
    
app 测试常见问题有哪些?原因有哪些
    常见问题:
        crash
        ANR(应用无响应、卡死)
    一般原因:
        设备碎片化
        网络波动大
        内存泄漏
        代码编写错误

app自动化测试工具
        (对比其他熟悉的自动化工具的优缺点
        自动化的简要方案)

app与web测试区别
    相同点:
        1、设计测试用例依据等价类,边界值等方法,测试原理相同
        2、大多数都采用黑盒测试方法来验证业务功能
        3、UI测试
            需要检查界面布局,风格和按钮是否美观,统一等
        4、性能测试
            测试页面载入、翻页的速度、登录市场是否溢出等问题(、
        5、测试应用系统的稳定性   
            
    不同点:
        1、中断测试
            通信等一些行为会对APP产生
        2、安装卸载测试:
            手机用户对app产品的安装卸载操作
            从上一个版本或上上版本直接升级到最新版本
        3、测试工具不一样:
            安卓手机自动化工具常见的是monkey,appium
            web自动化测试使用的是seleium    
                
    
app测试有哪几种环境
    1、本地环境
        app安装的手机环境和电脑搭建的自动化测试环境(比如安卓SDK)
    2、服务器环境
        war包部署的服务器,服务器可以通过浏览器访问
        
简单介绍按android SDK的安装步骤
    1、下载jdk和安装sdk
    2、安装jdk、配置环境变量(java_home、classpath、path)


移动应用及其服务端的测试点
    移动应用:
        权限
        ui
        功能
        性能测试
        中断
        安装运行卸载
        兼容性
        安全性
        回归
        升级更新
        用户体验
    服务端:
        接口测试
        性能测试
        安全测试
 


如何判断bug是客户端还是后台问题
    1.界面UI布局显示问题--前端
    2.页面字段校验问题--前端
    3.页面功能实现问题--前端?后台?
        前2个很容易确定是前端的问题。第3个牵扯到前端和后台共同处理,所以区分时需要理清楚。谷歌浏览器F12开发者工具Network一栏。
        如下图:点击【搜索】按钮,可以看到一个请求pageQuerySupplier
        点击进去之后Headers状态是200,表示请求发送成功。Request Payload是请求数据。
        Preview里面试响应数据。 
            如果请求发送失败;或者请求发送成功,返回数据失败。问一下开发是不是服务器关了(可能是在发版)。
            如果请求成功,返回结果也成功。这时候查看返回数据。如果没有返回前端需要的字段,后台问题。如果返回了前端需要的字段,前端没有校验住,前端问题。
    4.页面白板。页面本来就没有内容,或者加载缓慢。
    5.数据库数据也更新了,浏览器缓存也清理了,数据就是之前的老数据,是什么问题?应该使用了redis缓存数据库,redis中没有修改值。
    


安卓中如何取出日志信息
    1、把安装系统日志信息实时导入到本地   adb logcat - v.time>d:\mylog.log;
    2、运行使用某个app、实时获取该app的日志信息(cmd里面的返回信息):  adb shell monkey -p com.andorid.calendar -v 1000>d:\mylog2.log;

常见的adb命令:
    查看当前连接的设备  
        adb devices;
    安装软件:
        adb install 路径\xx.apk;
    卸载软件:
        adb uninstall<包含>
    从电脑上发送文件到设备
        adb push <本地路径> <远程路径> adb push c:\test1.txt/sdcard/:
    从设备上下载文件到电脑
        adb push <远程路径> <本地路径> adb push /pull/sdcard/test1.txt D:
    实时获取日志
        adb logcat -v time > d:\mylog.log
    登录终端设备:
        adb shell;
    查找包名/活动名
    关闭APP语法
    监控APP启动时间
    Monkey命令
    
APP这么多主流机型如何测试
    魅族
    华为
    小米
    苹果
    
App(闪退)原因
    缓存垃圾过多
    应用版本兼容问题
    
    
appium 都有哪些启动方式
    命令端启动
    命令行启动
    

安卓UI自动化测试工具
    appium
    robotium
    


Android手机和IOS系统区别
    两者运行机制不同:
        IOS采用的是沙盒运行机制
        安卓采用的虚拟机运行机制
    两者后台机制不同:
        IOS任何第三方程序都不能在后台运行
        安卓中任何程序都能在后台运行,直到没有内存才会关闭
    指令权限
        IOS用于UI最高
        安卓中数据处理指令权限最高
    



推荐阅读
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • 本文介绍了win7系统休眠功能无法启动和关闭的解决方法,包括在控制面板中启用休眠功能、设置系统休眠的时间、通过命令行定时休眠、手动进入休眠状态等方法。 ... [详细]
  • 本文介绍了Composer依赖管理的重要性及使用方法。对于现代语言而言,包管理器是标配,而Composer作为PHP的包管理器,解决了PEAR的问题,并且使用简单,方便提交自己的包。文章还提到了使用Composer能够避免各种include的问题,避免命名空间冲突,并且能够方便地安装升级扩展包。 ... [详细]
  • macOS Big Sur全新设计大版本更新,10+个值得关注的新功能
    本文介绍了Apple发布的新一代操作系统macOS Big Sur,该系统采用全新的界面设计,包括图标、应用界面、程序坞和菜单栏等方面的变化。新系统还增加了通知中心、桌面小组件、强化的Safari浏览器以及隐私保护等多项功能。文章指出,macOS Big Sur的设计与iPadOS越来越接近,结合了去年iPadOS对鼠标的完善等功能。 ... [详细]
  • 如何实现JDK版本的切换功能,解决开发环境冲突问题
    本文介绍了在开发过程中遇到JDK版本冲突的情况,以及如何通过修改环境变量实现JDK版本的切换功能,解决开发环境冲突的问题。通过合理的切换环境,可以更好地进行项目开发。同时,提醒读者注意不仅限于1.7和1.8版本的转换,还要适应不同项目和个人开发习惯的需求。 ... [详细]
  • 本文介绍了如何在Azure应用服务实例上获取.NetCore 3.0+的支持。作者分享了自己在将代码升级为使用.NET Core 3.0时遇到的问题,并提供了解决方法。文章还介绍了在部署过程中使用Kudu构建的方法,并指出了可能出现的错误。此外,还介绍了开发者应用服务计划和免费产品应用服务计划在不同地区的运行情况。最后,文章指出了当前的.NET SDK不支持目标为.NET Core 3.0的问题,并提供了解决方案。 ... [详细]
  • 本文介绍了如何使用python从列表中删除所有的零,并将结果以列表形式输出,同时提供了示例格式。 ... [详细]
  • 本文介绍了南邮ctf-web的writeup,包括签到题和md5 collision。在CTF比赛和渗透测试中,可以通过查看源代码、代码注释、页面隐藏元素、超链接和HTTP响应头部来寻找flag或提示信息。利用PHP弱类型,可以发现md5('QNKCDZO')='0e830400451993494058024219903391'和md5('240610708')='0e462097431906509019562988736854'。 ... [详细]
  • GAMETECH腾讯云游戏行业技术沙龙成都站圆满落幕
    11月13日,由腾讯云主办、游戏茶馆协办的2020年首场GAME-TECH腾讯云游戏行业技术沙龙在成都圆满落幕。本次沙龙邀请了腾讯云游戏行业解决方案总监宋永周、腾讯云游戏行业高级解决方案架构师曾梓恩、腾讯云游戏行业高级产品架构师郑晓曦、腾讯云游戏行业高级解决方案架构师温球良和天美L1(王者荣耀)服务器技术副总监杨光,为参会同行们带来了干货满满的技术建议。本文介绍了腾讯云游戏云的优势和为不同游戏研运场景提供的服务。腾讯云在中国游戏云服务市场领跑,成为众多游戏开发者的合作伙伴。 ... [详细]
  • Google在I/O开发者大会详细介绍Android N系统的更新和安全性提升
    Google在2016年的I/O开发者大会上详细介绍了Android N系统的更新和安全性提升。Android N系统在安全方面支持无缝升级更新和修补漏洞,引入了基于文件的数据加密系统和移动版本的Chrome浏览器可以识别恶意网站等新的安全机制。在性能方面,Android N内置了先进的图形处理系统Vulkan,加入了JIT编译器以提高安装效率和减少应用程序的占用空间。此外,Android N还具有自动关闭长时间未使用的后台应用程序来释放系统资源的机制。 ... [详细]
  • 本文总结了Linux下多线程执行shell脚本的4种方法,包括切换到工作目录执行、使用绝对路径执行、直接使用bash或sh执行。同时介绍了为什么需要加上"./"来执行脚本的原因。 ... [详细]
  • 本文介绍了RxJava在Android开发中的广泛应用以及其在事件总线(Event Bus)实现中的使用方法。RxJava是一种基于观察者模式的异步java库,可以提高开发效率、降低维护成本。通过RxJava,开发者可以实现事件的异步处理和链式操作。对于已经具备RxJava基础的开发者来说,本文将详细介绍如何利用RxJava实现事件总线,并提供了使用建议。 ... [详细]
  • GPT-3发布,动动手指就能自动生成代码的神器来了!
    近日,OpenAI发布了最新的NLP模型GPT-3,该模型在GitHub趋势榜上名列前茅。GPT-3使用的数据集容量达到45TB,参数个数高达1750亿,训练好的模型需要700G的硬盘空间来存储。一位开发者根据GPT-3模型上线了一个名为debuid的网站,用户只需用英语描述需求,前端代码就能自动生成。这个神奇的功能让许多程序员感到惊讶。去年,OpenAI在与世界冠军OG战队的表演赛中展示了他们的强化学习模型,在限定条件下以2:0完胜人类冠军。 ... [详细]
  • Java和JavaScript是什么关系?java跟javaScript都是编程语言,只是java跟javaScript没有什么太大关系,一个是脚本语言(前端语言),一个是面向对象 ... [详细]
  • 腾讯安全平台部招聘安全工程师和数据分析工程师
    腾讯安全平台部正在招聘安全工程师和数据分析工程师。安全工程师负责安全问题和安全事件的跟踪和分析,提供安全测试技术支持;数据分析工程师负责安全产品相关系统数据统计和分析挖掘,通过用户行为数据建模为业务决策提供参考。招聘要求包括熟悉渗透测试和常见安全工具原理,精通Web漏洞,熟练使用多门编程语言等。有相关工作经验和在安全站点发表作品的候选人优先考虑。 ... [详细]
author-avatar
武艺最新单曲问月09
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有