zoukankan      html  css  js  c++  java
  • 智能硬件产品的测试经验总结

    随着物联网的快速发展,智能硬件产品已越来越多地出现在市场上,公司也在开发几款重量级的智能硬件产品,作为其中一个产品的QA,分享下软硬结合的产品的测试方法。

    何为智能硬件,为什么智能硬件是趋势,可以看下面的图:
    智能硬件产品的测试方法 - 网易杭州QA - 网易杭州 QA Team
    那么接下来讲讲智能硬件的测试。再看一个图:
    智能硬件产品的测试方法 - 网易杭州QA - 网易杭州 QA Team
     

     这是传统互联网软件产品的架构,智能硬件的呢?如图:

    智能硬件产品的测试方法 - 网易杭州QA - 网易杭州 QA Team
     
    图中可以看到,多了一个硬件的模块,服务器中多了一个处理硬件信息的模块,测试的类型多了,特别是硬件部分,应该怎么针对地测试呢?首先规划下测试类型,我认为主要包括以下几类:
    系统测试
    接口测试
    重点测试
     
     系统测试
    这部分大家应该很熟悉。按照测试流程来走就好,需求分析、测试计划、测试用例及评审、冒烟测试、执行测试若干轮、回归测试、测试报告等步骤走完。主要测试的对象是以应用为核心,兼测试服务器及设备的功能。
    目前大家主要在做的是这部分的测试,做好这部分的测试,产品80%的bug都能发现。
     
    接口测试
    以前的接口测试主要是app和服务器的通信,主要以http请求为主。
    智能硬件产品的服务器承载两个端的请求,一般来说硬件产品与服务器会建立一个TCP/UDP长连接,定时发心跳包及其他通信内容包,另一端则是app端的接口。
    以java为例,测试长连接的服务端,socket写一个客户端,用现成框架mina/netty写一个客户端等,具体代码就不给出了。http请求就不赘述,方法太多了。
    这部分的测试最好和开发同时进行,但新项目的进度和需求缘故,一般都会等到产品稳定进行,这块发现的问题很多都不是严重的问题,但是一旦有个重要问题就会导致产品功能无法使用,好在服务端的bug修复都会很快。
     
    核心测试
    什么是核心测试?试想一下智能手环运动检测不准确,OBD会使静止的汽车亏电,智能血压计检测的血压不对等等问题,那么这个产品一旦上市就会失败,任何的bug修复也无济于事。所以这块的测试非常重要。
    以下举几个核心测试内容的例子:
    耗电测试,最简单是接一个万用表,实时查看设备的电量情况,但是你必须实时查看,也没有历史记录。最好是准备一个专用的功率电量测试工具,有交直流电,有报表输出,在各种配置下的耗电情况都能自动记录。这块主要针对手环、OBD等需要电池的产品。
    GPS测试,户外的智能产品大部分都配备了GPS,GPS信号强度和周围环境有直接关系。隧道、高层建筑、天气等都会干扰GPS定位,另外设备启动关闭点也是GPS容易发生问题的时候。
    干扰测试,很多智能硬件产品会插在其他设备上,如电视盒子、家居控制设备、汽车设备,一定程度上会对其他设备产生干扰,甚至影响其他设备的正常使用。
    类似的功能还有很多,这些是智能硬件产品的核心,如果这些功能出现问题,产品就会死掉,所以这部分需要重点测试,投入最多的人力进去。
     
    综上所述,智能硬件产品测试思想和以往的互联网测试还是有一定的区别,我们要更多的关注在硬件上,但又不能忽视了软件,两者相辅相成,也将是未来测试的新方向。
     
     
    转:http://qa.blog.163.com/blog/static/19014700220141129372269/
  • 相关阅读:
    Push UIViewController with different orientation to previous
    shouldAutoRotate Method Not Called in iOS6
    UIScrollView中图片放大后不居中,或居中后移动有偏差解决办法
    iOS7隐藏状态栏 status Bar
    【struts2】Struts2的系统架构
    【struts2】核心概念
    【struts2】struts2的execAndWait拦截器使用
    【struts2】<s:url>标签
    【sql】CHARINDEX
    【js】在js中加HTML注释标签的原因?
  • 原文地址:https://www.cnblogs.com/xh0102/p/5723744.html
Copyright © 2011-2022 走看看