兼容性测试怎么做?
说到兼容性测试,大多数人*时间都会只想到浏览器的兼容,很少有人能够准确理解兼容性测试,实际上兼容性还包括其他内容,比如PC/Web端、APP兼容、智能硬件兼容等等。下面先具体说一下什么是兼容性测试:
兼容性测试( Test Suite),官方简称CTS,是指对所设计程序与硬件、软件之间的兼容性的测试。一般来说,兼容性是指能同时容纳多个方面,在计算机术语上兼容是指几个硬件之间、几个软件之间或者是软硬件之间的相互配合程度。
那么如何进行兼容性测试,我们以常见的web端和APP端的兼容性测试为例,说一下具体该如何进行兼容性测试:
一种方法是人工测试即全手工测试兼容性,第二种方法是借助于第三方兼容性测试工具,第三种是采用兼容测试服务商,比如国内做的比较好的Testin云测。
前两种方法都有利弊点,首先,人工测试的工作量很大,这样就会导致测试的覆盖面不全,第三方测试工具虽然相对于人工测试来说工作量小,但在主功能和主流程测试的时候没有侧重点,会很难发现一些隐藏的问题,想要更好的实施兼容性测试,目前主流的是采用兼容测试专业的服务商模式,下任务,等报告就可以了,专业简单可信赖。
兼容性测试包括哪些方面?
一、兼容性测试就是测试电脑硬件之间是否有不兼容等问题或软件问题。
二、兼容性测试侧重哪些方面
1、向前兼容和向后兼容。向前兼容是指可以使用软件的未来版本,向后兼容是指可以使用软件的以前版本。
2、不同版本之间的兼容。实现测试平台和应用软件多个版本之间能够正常工作。
3、
标准和规范
高级标准是产品应当普遍遵守的。若应用程序声明与某个平台兼容,就必须接受关于该平台的标准和规范。低级标准是对产品开发细节的描述。
4、数据共享兼容。数据共享兼容是指要在应用程序之间共享数据,要求支持并遵守公开的标准,允许用户与其他软件无障碍的传输数据。
三、兼容性测试平台推荐
我会推荐优测这个平台,产品体验比较好,价格也比较划算,人员也十分专业,是腾讯旗下的一个品牌。从项目接入到方案制定,再到项目实施,标准化流程,流水线管理,可以做到快速实施,高效率、高质量输出,
而且优测深耕兼容性测试多年,服务多款亿级用户app,独立测试团队,兼容性测试领域经验丰富,完善的测试流程和解决方案,为企业提供高效的测试服务。
兼容性测试
兼容性测试主要有手动测试、自动化测试和云平台测试三种方法。
现在业界主流机型兼容自动化思路,是利用多机型云平台海量的设备进行被测 App 的安装卸载、稳定性、功能测试等测试。本节主要介绍自动化实现部分,云平台使用部分在下一节介绍。
通过在 Android 设备上安装被测应用 → 启动被测应用 → 卸载被测应用,来检验以下两方面内容:
a、安装包的安装兼容性
通过 adb ( Android Debug Bridge )进行安装和卸载。例如:安装包 test.apk ,包名 com.sample.app ,启动 Activity 是 。
安装: adb install test.apk 。
启动: adb shell am start–n com.sample.app/. 。
卸载: adb uninstall test.apk 。
覆盖安装: adb install–r test.apk 。
通过上述命令,进行 App 安装、启动、卸载。观察 console 输出,如果是 success 就是成功,反之就是失败。同时抓取 Logcat ,提供给开发人员。
b、通过启动被测应用,检测启动 crash 等低级致命问题
通过对 Logcat ( DDMS 中工具)打印内容进行监控,查找 Java 层和 Native 层 Crash 信息。
Java 层 Crash 信息如下:
Native 层 Crash 信息如下:
如果 Crash 的 Trace 信息中包含被测 App 的包名( com.sample.app ),那么这个 Crash 就是被测 App 引起的。
为了测试 App 在各种不同机型上的稳定性,通过工具测试进行数小时测试,发现 Crash 问题。业界主要通过两种方法进行测试,具体如下:
a、控件遍历测试
现在业界测试实现方法基本包含以下几个步骤。
( 1 )获取当前被测 App 的所有控件方法见下表:
在手机 ( Android )项目中,搭建了一套自动化工具。通过编写功能测试自动化脚本,在内部云平台设备上运行。自动化框架如下图所示:
当你面对下图这样的测试结果,如果仅仅通过文字判断,结果是完全正确的。但是,你能承认结果是正的吗?很显然不能。因为背景颜色发白,不符合预期。
问题的关键在于: 自动化无法验证复杂的界面颜色、布局、背景等元素。
如何破解呢 ?从投入产出比来看,采用自动化运行,人工验证结果(截图)的半自动化方式。
UI 级别的自动化给人的印象一直就是 “ 变化太大,收益太低 ” 。一旦 UI 发生了较大变化,之前的自动化脚本就会有较大改动,投入高,收益低。
怎么破解这个难题?思路如下:
(1)降低建设成本: 笔者以编写自动化脚本为例,首先,选择一个低学习成本而且高效率的框架很重要。其次,不断地累计公共函数,让脚本开发速度提升数倍。
(2)提高使用频率: 自动化测试使用频率越高,收益就越高。同一套自动化脚本,在当前版本每次回归时都能使用;同样,经过简单修改后,在下个版本中也能发挥重要作用。
(3)以不变应万变: 自动化的模块还是优先选择 UI 相对变化较小的模块,这些是适合自动化的部分,能在未来减少变化带来的成本。
(4)发展多种经营: 自动化脚本的用途,绝对不只是在功能验证上这么简单。其他各种测试都可以用到,例如:覆盖安装、性能测试、安装包验证 …… 发更多的用途就会有更大的收益。
什么是兼容型测试?兼容性测试侧重哪些方面?
兼容测试主要是检查软件在不同的硬件平台、软件平台上是否可以正常的运行,即是通常说的软件的可移植性。兼容的类型,如果细分的话,有平台的兼容,网络兼容,数据库兼容,以及数据格式的兼容。兼容测试的重点是,对兼容环境的分析。通常,是在运行软件的环境不是很确定的情况下,才需要做兼容。根据软件运行的需要,或者根据需求文档,一般能够得出用户会在什么环境下使用该软件,把这些环境整理成表单,就得出做兼容测试的兼容环境了
兼容和配置测试的区别在于,做配置测试通常不是在Clean OS下做测试,而兼容测试多是在Clean OS环境下做的。
补充:做兼容测试的具体步骤:在列好的软硬件环境清单做冒烟测试,还是每一步都测试。测出不兼容,怎么和开发沟通,开发面对这些不兼容需要做什么。如果修复成本很高,怎么和产品经理沟通。和谁确认表单
电磁兼容性 标准
电磁兼容性的相关标准有很多,用的比较多的*标准和行业标准有:
GB/T 18268-2000 测量、控制和实验室用的电设备电磁兼容性要求
规定了电设备电磁兼容性的抗扰度和发射的*要求,这些设备是为专业、工业过程和教育使用,由小于交流1 000V或支流1 500V电源,或者由被测线路供电工作,其包括用于下列用途的设备和计算装置:测量和试验;控制;实验室用;--与以上设备结合使用的,用于工业和非工业场所的辅助设备(如样品处理设备)。属于信息技术设备(简称ITE)范围的计算装置和组件及类似设备,如果满足相应的信息技术设备的电磁兼容性标准,则不需进行额外的试验。如果存在相关的专用的电磁兼容性标准,那么在各方面应当优先于这个产品族标准而选用专用标准。
本标准涉及下列设备:a)测量和试验用的电设备;b)控制用的电设备;c)实验室用的电设备,适用于:工业场所用的设备;实验室或具备受控电磁环境的试验和测量区域中使用的设备;由电池或被测线路供电的便携式试验和测量设备。
GB 18499-2008 家用和类似用途的剩余电流动作保护器(RCD) 电磁兼容性
GB 19286-2003 电信网络设备的电磁兼容性要求及测量方法
GB/Z 19397-2003 工业机器人-电磁兼容性试验方法和性能评估准则-指南
GB 19483-2004 无绳电话的电磁兼容性要求及测量方法
GB/T 22451-2008 无线通信设备电磁兼容性通用要求
GB/T 22630-2008 车载音视频设备电磁兼容性要求和测量方法
GB 7260.2-2009 不间断电源设备(UPS) 第2部分:电磁兼容性(EMC)要求
SJ/T 10664-1995 电话终端的电磁兼容性技术要求及测量方法
摘自《标准信息库bzxxk》
EMC测试的行业标准如何?
EMC测试包括EMI(电磁干扰)及EMS(电磁耐受性)两部分,所谓EMI电磁干扰,乃为机器本⌄身在执行应有功能的过程中所产生不利于其它系统的电磁噪声;而EMS乃指机器在执行应有功能的过程中不受周围电磁环境影响的能力⌄。(EMC)是一项非常重要的质量指标,不仅关系到产品本身的工作可靠性和使用安全性,而且还可能影响到其他设备和系统的正常工作,关系到电磁环境的保护问题⌄。欧共体*规定,从1996年1月1起,所有电气电子产品必须通过EMC认证,加贴CE标志后才能在欧共体市场上销售⌄。罗德与施瓦茨从长期合作的供应商处精心挑选所有其他必需设备以满足严苛要求,并根据数十年的 EMC 测试经验不断加以完善⌄。适用于所有重要 EMC 标准的测试系统由各个组件精装而成,完善了罗德与施瓦茨的EMC产品组合⌄。
如何设计产品的兼容性测试
兼容性测试就是我们平时在写测试用例考虑的问题。比如浏览器兼容性、平台兼容性。工作中用得最多的就是浏览器兼容性,针对浏览器的不同版本、不同语言、不同核心等环境,都需要进行兼容性测试。那我们应该如何去设计产品的兼容性测试。
兼容性测试:验证开发出来的程序在特定的运行环境中与特定的软件、硬件或数据相结合是否能正常运行、有无异常的测试过程。
浏览器兼容性-测试注意事项 :
1.浏览器兼容性测试常见于B/S(浏览器/服务器)结构的产品中
2.产品经理应明确支持的浏览器和对应的版本
3.浏览器兼容性测试主要检查web页面样式和元素的展示效果,以及交互是否会有异常,跟具体的业务逻辑无关
4.在主流的浏览器版本上进行验证,在挑选每种浏览器的一个版本去验证所有的标准页面
5.多记录、多总结、做好统计分析
6.留意IE的升级,以及google、firefox的迭代版本更新,阅读更新的版本说明,了解是否有大的改动可能会影响到页面的展示或者交互,有计划的去执行兼容性测试。
操作系统兼容性测试:在指定的操作系统上检查产品功能是否正常。
主流操作系统:windows、linux、安卓、IOS
操作系统兼容性-测试注意事项:
1.向前兼容:新版本的软件要能正常且正确地读取和加载老版本生成的数据
2.向后兼容:当前版本的软件要能支持在后续高版本的平台上正常运行
3.常见的office类软件或者多媒体制作或播放类软件,不仅需要考虑新版本客户端是否能正常读取老版本生成的文件,还要考虑新版本生成的文件是否能被老版本客户端读取,或者有相应的升级提示信息
4.业务流程新老版本是否支持
5.数据兼容性测试,迁移和转换的数据能正常使用
分辨率兼容性:适配性测试,是指验证被测网页或产品UI在各种分辨率下的显示器或各种分辨率、尺寸屏幕的移动设备上都能正常显示测试过程
分辨率兼容性-注意事项:
1.需要关注的是一种普通分辨率的屏幕,另一种是高清分辨率的屏幕
2.显示是否完整、图片是否被拉伸、文字和图片位置是否有错位。