针对不同的软件,系统测试的策略各不相同,例如:金融方面的软件安全性放在首位。

1.功能测试:(最基础的)

  检测软件对象是否存在一下错误:

         1.是否有不正确,遗漏,或者多余的功能

         2.是否满足了用户需求和隐藏需求

         3.对输入有无正确的响应,输出做出正确的显示

        4.对系统的流程设计是否正确合理

       5.所有的路径是否达到了覆盖

注意点:

      1.从用户角度出发,考虑什么情况下使用什么功能

      2.考虑用户多个功能组合运用时前后台的交互

     3.对WEB端,多用户使用,是否会让功能失效

2.性能测试:

主要检测性能是否满足特定的性能需求。

常用指标:

         并发数,响应时间,每秒处理的事务数,吞吐量,点击率,访问量以及硬件资源

        考虑方面:

           1.是否与性能需求完全一致

            2.检验实现的具体性能到底是怎么样的。

3.压力测试

         主要检测被测系统的性能,可靠性,稳定性等

        目的:检查系统的性能,可靠性,稳定性等

        基本步骤:

           1.进行简单的多任务测试

            2.在简单压力测试被修正后,增添系统的压力直到系统中断

           3.在每个版本循环中,重复进行压力测试。

4.容量测试

        容量测试是面向数据的;

      目的:显示系统可以处理目标内确定的数据容量。

步骤:

   1.首先分析系统的外部数据源,并对数据进行分类

   2.对每类数据源分析可能的容量限制,对数据类型分析记录的长度和数量限制。

   3.对每类数据源构造大容量数据对系统进行测试

   4.对分析结果与期望值比较,最后确定系统的容量瓶颈。

   5.对系统进行优化并重复上面的步骤,直到系统达到期望的容量处理能力。

5.安全性测试

  常用方法:

     1.静态代码检验主要验证功能的安全隐患

      2.可以借助安全测试工具APPScan进行漏洞扫描

     3.模拟攻击来验证软件系统的安全防护能力

     4.利用Wireshark工具对网络数据包进行截取分析。

6.兼容性测试

       策略:向上兼容,向下兼容,交叉兼容

       考虑以下几点:

      1.软件本身能否向前或向后兼容,(不同版本间的兼容)

      2.能否与其他相关软件兼容

      3.不同操作系统间的兼容

      4.数据的兼容(数据共享)

     5.硬件兼容(app考虑手机品牌,型号等)

7.GUI测试

8.可靠性测试

       可靠性是软件质量中的一个重要标志

9.配置测试

     需要和其他测试结合:功能测试,性能测试,兼容性测试,GUI测试等

   1.服务端:硬件,web服务器,数据库服务器等

   2.客户端:考虑操作系统,浏览器,分辨率,颜色质量

10.异常测试

 

  方法:

              1.强行关闭软件的数据库服务器或者其他方式导致数据库死机

              2.非法删除数据库中的表数据,表等

              3.非法断开网络或则认为增加网络流量

             4.强行重启web服务器或者中间件服务器,测试软件的恢复能力

             5.人为的增加cpu,内存,硬盘等负载

            6.对部分软件测试机器进行断电测试

11.安装测试

 

  安装中:安装流程是否合理,检查安装文件,注册表,数据库的变化

  安装后:是否正常运行,基本功能能否实现

卸载测试:能否恢复到安装前的状态

升级测试:升级对已有数据的影响

12.网络测试(主要测试的是协议测试)

       关注点:

              1.功能实现方面:协议,软件内部的网络循环数与架构

             2.性能方面:吞吐率和I/O占用率

             3.安全方面:传输加密(MD5,RSA)

            4.网络技术方面:数据收集分析,监控工具(Wireshark)

13.可用性测试

14.健壮性测试

15.文档测试