一直以来都是站在公司这个巨人的肩膀上,拿着已经确定的机型及系统来验证兼容性功能(公司按照用户使用较多的 top10 的机型、系统购买真机)
但是并没有深入的去了解过,影响兼容性的具体因素具体都影响的页面中的具体哪些功能或者展示等?
影响因素大体可以分为:
系统(Android,iOS)
型号(比如 Android:华为、小米、oppo 等 iOS iPhone X,iPhone13pro 等)
版本(Android 系统版本,iphone 各个系统版本)
分辨率
屏幕尺寸大小
我有一些疑问:
1、内嵌在 APP 中的 H5 页面如果仅仅只是展示,需要考虑的兼容性因素是什么?为什么?
2、内嵌在 APP 中的 H5 页面如果要和 APP 原生页面频繁交互,需要考虑的兼容性因素是否会更多?为什么?
3、内嵌在 APP 中的 H5 页面若是需要调用手机硬件功能,需要的兼容因素又是什么?为什么?
4、如果当前没有指定机型,内嵌在 APP 中的 H5 页面如果仅仅只是展示,是否用模拟器模拟分辨率和尺寸就可以验证?文章源自玩技e族-https://www.playezu.com/183383.html
基础知识没打牢固,恳请大佬们指导一下,查了各种资料大多是在讲怎么选机型,但是没有找到不同因素的具体影响文章源自玩技e族-https://www.playezu.com/183383.html
软件测试功能图文章源自玩技e族-https://www.playezu.com/183383.html 文章源自玩技e族-https://www.playezu.com/183383.html
未知地区 1F
仅楼主可见按个人理解尝试回答下:
1、内嵌在 APP 中的 H5 页面如果仅仅只是展示,需要考虑的兼容性因素是什么?为什么?
如果只是展示,无功能。那需要考虑的就只是展示的兼容性了。不同分辨率、不同比例的屏幕下,展示是否都没问题,会不会被挤出去或者出现重叠。不过坦白说,现在前端基本上都不是直接写 html + css 来控制展示的,就算只是展示也离不开 js ,所以也要考虑 js 的兼容。比如某些 js 函数的使用、html5 标签的使用,会不会在某些浏览器上是不支持的。示例:https://developer.mozilla.org/en-US/docs/Web/HTML/Element/video#browser_compatibility
2、内嵌在 APP 中的 H5 页面如果要和 APP 原生页面频繁交互,需要考虑的兼容性因素是否会更多?为什么?
这个不一定,具体要看你的 app 。webview 要和原生 app 交互,需要通过 js bridge 技术进行,即原生 app 暴露特定 js 函数给 h5 调用。如果你的 app 提供的函数一直没变过,那这部分没什么特别的兼容性问题,但如果有改变(比如 1.0 版本和 1.5 版本相同功能的函数进行了重构导致调用方式有差异,或者 app 内部这个函数的实现在不同版本的系统有不同的处理逻辑),那就得按照实际在什么地方有改变进行针对性的兼容性测试。
如果是函数调用方式改变,需要确认这个页面在新老版本 app 上都能正确识别和调用对应的函数,即 h5 需要在新老版本 app 上分别测试
如果是函数内部实现不同版本有差异,这个正常来说改变了实现逻辑后的函数刚出来就要测一遍确保行为一致,所以一般也不需要特意测试。
3、内嵌在 APP 中的 H5 页面若是需要调用手机硬件功能,需要的兼容因素又是什么?为什么?
这个和第 2 个基本一致,硬件功能都是要通过原生 app 提供的 js 函数来完成的。兼容因素就是原生 app 的这个 js 函数实现是否有兼容不同操作系统版本。
4、如果当前没有指定机型,内嵌在 APP 中的 H5 页面如果仅仅只是展示,是否用模拟器模拟分辨率和尺寸就可以验证?
影响展示的要素核心是窗口的大小(即比例和尺寸)和浏览器渲染引擎逻辑,理论上只要这两者一致,那效果就是一致的,所以模拟器是可以验证的。
但要特别留意 浏览器渲染引擎 这个点,不同浏览器内核渲染引擎会有差异,比如 android 原生 webview 和微信 webview 用的 x5 内核就会有差异,苹果 iOS 不同版本对应的 webview 内核也有差异。你需要先确认清楚浏览器内核保持一致这个点。特别感谢,非常深刻,学习了