功能测试的一些心得----转载

  1、前言

   功能测试是测试工程师的基础功,不少人功能测试还作很差,就想去作 性能测试自动化测试。不少人对功能测试的理解就是点点点,如何本身不用心去悟,去研究,那么你的职业生涯也就停留在点点点上了。在这里,我把我对功能测试的理解写下来。
   2、功能测试所须要掌握的技能
  2.1  熟练使用 SQL
  一、经常使用的 sql 语句必定会写。好比说增删改查之类。
  二、了解 数据库的事务、会编写存储过程、熟练经常使用的系统函数。
  三、了解并能够进行数据库的备份、迁移、还原、镜像等操做
  四、对 sql 语句进行调优,并对能够对运行的语句监控查看性能
  五、了解数据库集群等操做。
  2.2  Linux
  Linux是测试人员的基础功,不须要掌握太难或者很不常见的Linux命令,正常能作到查看日志,定位问题就能够了。
  一、基本命令
  经常使用的Linux基本命令,面试常常会问的,或者给出一种场景,问你用什么命令。
  二、查看日志
  初级测试人员在工做时常常遇到,发现 bug,开发不认可或者不肯意解决的状况,测试人员怎么摆脱这样的问题呢?
  那就是根据发现的bug根据日志级别,来查看日志,定位问题。
  那这里首先要说一下日志级别了。
  首先记住这一点:日志级别越高,输出的信息越少 。
  具体的日志级别分为四级:
  info : 代码 info 信息,不包括sql语句等一些debug信息
  warning warning : 代码警告信息
  error : 程序自己报错信息  java.lang.outindexERROR.....
  critical :几乎用不到
  通常不符合需求的bug在 debug中,程序自己报错的bug在 error中。
  2.3 使用数据库,跟数据流向
  关于数据库,请见另一篇博文。
  一、数据库的本质
  常见数据库主要是MAYSQL、ORECAL、Redis
  其中Mysql数据库是典型的关系型数据库
  二、数据库操做
  (1) 数据库和表操做
  (2)表数据操做
  (3)复杂sql查询
  2.4 写好 测试用例
  在测试过程当中很重要的一类文档,它是测试工做的核心、是一组在测试时输入输出的标准、是软件需求的具体对照。编写测试用例,是测试人员的基本功,可是真正能写好的人并很少。
  测试用例必须包含的内容:
  用例编号、用例名称、测试背景、前置条件、优先级、重要级、测试数据、测试步骤、预期结果、实际结果、备注。
  一、测试用例的编写流程
  需求分析->提取测试点->测试用例编写->测试用例评审
  二、编写测试用例的思路
  (1)根据产品的RPD,提取测试点。
  (2)根据数据流的走向。
  (3)根据的架构部署。
  (4)编写测试用例的经常使用方法:等价类划分法、边界值分析法、流程图法等。
  (5)覆盖弱网测试、 接口测试安全测试、性能测试等。
  (6)经常使用测试工具备:Postman、 Charles、 Fiddler 、Jemter、Loadrunner等。
  三、编写测试用例注意事项
  (1)根据项目的实际状况设计测试用例表格
  (2)用例格式不要生搬硬套
  (3)根据具体状况编写
  (4)学会质疑需求,不要彻底按照需求来写测试用例,要从客户和产品的角度来理解需求,看到需求以外的功能和体验
  四、管理测试用例
  为何要管理测试用例?
  (1)测试用例数目巨大
  (2)测试用例会根据需求的改变而改变
  (3)测试用例须要长期补充完善
  如何管理测试用例?
  (1)原始的Excel管理
  (2)专业的 项目管理系统(eg:git、禅道、 JIRA、Confiuence等)通常都为 web格式
  2.5 http与https协议
  面试常常关于Http协议的下面几个问题
  一、Http协议原理
  二、http和http协议的区别
  三、TCP和UDP的区别
  四、session和token的区别
  五、公钥和私钥的理解
  六、get和post的区别
  七、从输入URL到页面加载发生了什么
  八、什么叫代理,正向代理和反向代理?
  2.6 了解业务
  作功能测试,必定要了解业务,甚至理解业务。只有把业务吃透,才能把功能测试作好,而且有必定的提升。
  业务熟悉后,会知道不少常识,知道下面的常识以后,你就能够尝试进阶,学习作自动化测试、接口测试、性能测试
  一、何时介入自动化 => 当你系统趋于稳定的时候
  二、何时介入接口测试  => 当接口开发完毕的时候
  三、何时介入性能测试 => 当出现促销的时候,或者抢购的时候(618大促,过年抢火车票,抢优惠券)
  好比说,5000张优惠券,大概有多少人抢,在多长时间内抢完
  2.7 bug管理
  作功能测试,还有个很重要的工做就是bug管理,一个优秀的的测试人员,线上bug很是多,多于和你一块儿工做的其余同事,可是线上bug很是少,少于其余同事。
  一、 bug定义
  (1)不符合需求的
  (2)程序自己报错
  (3)不符合用户的使用习惯
  二、bug生命周期当咱们测试人员提交一个bug的时候,自始bug就有它的生命周期,从开始到
  结束,生命周期以下
   
  三、bug单内容
  Bug描述(summary)
  环境信息:操做系统/数据库/浏览器/软件版本 (OS/Database/Project/Build/Release)
  所属功能模块
  测试/开发人员
  严重等级(1-5)
  客户优先级
  风险程度
  状态
  重现步骤
  实际结果
  是否要回归问题
  等
  四、测试报告
  把测试的过程和结果写成文档,对发现的问题和缺陷进行分析,为纠正软件的存在的质量问题提供依据,
  同时为软件验收和交付打下基础测试报告和测试计划同样,通常由测试leader编写,测试人员须要了解
  一下测试报告中都有哪些内容
   
  2.8 典型bug
  一、抓包做用: 测试一个app搜索功能,抓包,抓到一个搜索接口,忽然发现抓到了两个请求接口 -> 当访问量上来了,服务的压力上升两倍
  二、数据流走向 : 测试时候发现页面上数据只有一条,可是数据库里面多了一条 -> 一、数据量变大,查询变慢 二、脏数据太多,瞬间爆满,程序崩溃了
  三、弱网测试:app项目必定要有弱网络测试(模拟2g、3g、4g,wifi网络状态以及丢包状况);网络切换测试(网络断开后重连、3g切换到4g/wifi 等)
相关文章
相关标签/搜索