zoukankan      html  css  js  c++  java
  • 移动app中断测试之来电中断

    移动app中断测试之来电中断



    智能设备功能的日益强大和用户使用场景的多样性,使一款APP在移动设备端中断操作非常频繁,APP在中断场景的表现直接影响用户体验,中断测试是APP功能测试的必测内容。
    说到手机的中断测试,来电中断是大家最容易想到的,常规的测试包括呼叫和通话中断,如下图。



    贴近智能手机的用户应用场景,我们发现打电话已经不局限于使用运营商网络,常用的社交软件如QQ、微信都支持语音和视频电话。这些软件使用网络进行通话或者视频,与运营商电话网络形式不同,所以非常有必要做中断测试。来电中断的测试场景添加如下图。



    中断测试要点 
    中断指软件在工作中被其他的任务或意外事件等情况终止推出,相应的测试即为中断测试,中断测试有人为中断、新任务中断以及意外中断等几种情况 
    中断详细包括以下: 


    一. 来电中断:呼叫挂断、被呼叫挂断、通话挂断、通话被挂断  


    二:短信中断:接收短信、查看短信 


    三:其他中断:蓝牙、闹钟、插拔数据线、手机锁定、手机断电、手机问题(系统死机、重启)  
    中断场景: 
    在以下场景介入外部事件(来电、短信、插拔数据线等) 


    1. 登陆界面load时交互信息数据 


    2. 读取好友列表界面load时交互信息数据(最密好友列表刷新、好友列表刷新)


    3. 好友列表界面load时交互信息数据(添加、删除好友时)


    4. 查询个人资料界面load时交互信息数据 


    5. 查询排行榜界面load时交互信息数据 


    6. 查询游戏战绩界面load时交互信息数据 


    7. 查询财务界面load时交互信息数据 


    8. 游戏积分上传界面load时交互信息数据 
    游戏中断 :
    在游戏运行的过程中,对游戏进行停止动作,例如短信,来电等,使游戏暂停。从而验证游戏的稳定性。 中断操作: 
    在游戏从开始起,一直到游戏完全退出,都算游戏过程,此过程中,游戏中的任何一屏,都应该可以中断,平且正常返回,且不会出现任何问题。游戏在中断后,应该会显示出一个暂停屏,此屏一般为黑底,提示信息为:“press center/5 key to continue” 或“按中心键/5键继续”。按中心键后游戏继续运行



    举一个中断测试的案例:
     
    最近一个项目,大量用到时间中断,也经常出现各种bug,为了查找原因,特意做了几个小test
     
    1 using UnityEngine;  
    2 using System.Collections;  
    3   
    4 public class test : MonoBehaviour {  
    5   
    6     // Use this for initialization  
    7     IEnumerator  Start () {  
    8       
    9         InvokeRepeating("test1",0f,1f);  
    10             //yield return new WaitForSeconds(1f);  
    11             CancelInvoke("test1");  
    12             yield return null;  
    13         }  
    14           
    15         // Update is called once per frame  
    16         void Update () {  
    17           
    18         }  
    19           
    20         void test1()  
    21         {  
    22             Debug.Log(Time.time);  
    23             Debug.Log("haha");  
    24         }  
    25     }  
     
    什么都不输出
     
    如果把name="code" class="csharp">yieldreturn new WaitForSeconds(1f);加上
    输出为: <ignore_js_op>
     
     
     
    下面这段代码,就canel不掉,真他妈的坑爹啊
     
    1 using UnityEngine;  
    2 using System.Collections;  
    3   
    4   
    5 public class test : MonoBehaviour {  
    6   
    7   
    8     // Use this for initialization  
    9     void  Start () {  
    10           
    11             StartCoroutine("createstart");  
    12         }  
    13           
    14         // Update is called once per frame  
    15         void Update () {  
    16           
    17         }  
    18           
    19         IEnumerator createstart()  
    20         {  
    21             int i=0;  
    22             while(true)  
    23             {  
    24             InvokeRepeating("test1",0f,1f);  
    25             yield return new WaitForSeconds(5f);  
    26             CancelInvoke("test1");  
    27                 print("ok i ge");  
    28             yield return null;  
    29                   
    30             }  
    31         }  
    32           
    33         void test1()  
    34         {  
    35             Debug.Log(Time.time);  
    36             Debug.Log("haha");  
    37         }  
    38     }  
     
    <ignore_js_op>
    1 using UnityEngine;  
    2 using System.Collections;  
    3   
    4 public class test : MonoBehaviour {  
    5       
    6     public bool isok=true;  
    7     // Use this for initialization  
    8     void  Start () {  
    9       
    10             StartCoroutine("createstart");  
    11         }  
    12           
    13         // Update is called once per frame  
    14         void Update () {  
    15           
    16         }  
    17           
    18         IEnumerator createstart()  
    19         {  
    20             int i=0;  
    21             while(isok)  
    22             {  
    23             InvokeRepeating("test1",0f,1f);  
    24             yield return new WaitForSeconds(5f);  
    25             isok=false;  
    26             CancelInvoke("test1");  
    27                 print("ok i ge");  
    28             yield return null;  
    29                   
    30             }  
    31         }  
    32           
    33         void test1()  
    34         {  
    35             Debug.Log(Time.time);  
    36             Debug.Log("haha");  
    37         }  
    }  
    目前能做中断测试的一些公司,我知道的有TestFlight、TestFairy、TestBird、GooglePlay等等。
  • 相关阅读:
    杭电2054
    M1/M2总结
    软件开发相关的读书笔记 问题与方法
    代码复审1234跟我一起来
    电梯调度算法简述
    Pair_Work Project
    读书笔记摘录:
    Individual Project
    个人阅读作业——软件工程M1/M2的总结
    个人阅读作业2
  • 原文地址:https://www.cnblogs.com/ce5201314/p/5310478.html
Copyright © 2011-2022 走看看