zoukankan      html  css  js  c++  java
  • 关于测试

    从2011年毕业到现在,从事软件测试工作已经有将近三年了,随着工作的经验的积累,对测试的认识也在不断的提高。

    经常会听到身边有人抱怨,我做测试天天就是点鼠标,做功能测试,累死了,烦死了;想学学做自动化,性能方面的测试。

    相信很多做测试工作的同学会有相同的感觉。

    最近换了工作,面试了两家公司,又对测试有了更进一步的认识。

    首先,我觉得作为一名测试人员,有两项很重要技能:测试点的发掘和丰富的测试手段,而测试点的发掘则是最重要的。下面就这两个方面聊一聊我眼里边的测试。

    测试点的发掘:如果作为一名测试人员,不能发掘一个需求或系统需要测试的点,那么就不能算是一个合格的测试人员,那么该怎么去发掘出测试点呢?

    关于测试点,业界有比较成熟的模型--软件质量模型,供大家从不同的方面去分析需求或这系统需要测试的测试点。

     

     从以上模型,基本可总结出需求或者系统需要测试的测试点。

    比如给你一个需求或系统,首先要考虑的就是,这个需求或者系统是要做什么的(功能),是不是安全(功能),好不好用(易理解性)等。

    只有发掘了测试点,测试工作才有依据,所以大家一定不要舍本逐末。

    再者就是丰富的测试手段这个技能了。

    这个技能是建立在测试点的发掘的技能之上的,不然没法开展测试工作。

    对于以上所说的,功能测试就是点击鼠标,又累又烦躁,这点我认同。所以想去做自动化或者性能测试。

    什么是自动化?

    自动化就是用程序自动执行的方式,替代人工去执行测试用例,去除重复的劳动,节省一些回归时候的人力成本。

    举个列子来说吧。

    某个人认为整天点鼠标是在浪费生命,不行去点击鼠标了,就想到了把点击鼠标的事情交给自动化来实现,这个时候,同事大家所说的自动化,就是基于GUI的UI自动化,即用代码去默认键盘,鼠标和系统的交互,通过这样的方式来完成测试。

    接下来,大家会面临一个问题,互联网随时都在变化,你的需求和系统也在随时变更(我也讨厌变更,哈哈),不停的改版,你会发现原来的UI自动化代码也得跟着变化或者经常找不到页面元素(稳定性令人抓狂),不停的去维护已经写好的代码,甚至有时候要重构你的UI自动化代码,成本很高,投入产出比不理想,那这个时候该怎么办呢?

    向后挖!

    GUI所展示的数据都是以后服务端的API接口返回的,经过浏览器的渲染,以GUI(图形用户接口)的形式展现给用户,那么我们为什不对系统的API进行测试呢,可以避免掉系统界面的频繁变更和找不到页面元素的问题,QA也能更早的介入测试,保证接口的质量。所以可以对接口进行自动化测试。

    再往后,我们就可以接触到代码,可以对代码进行自动化白盒测试。

    对性能测试来说也是一个道理。

    拿loadrunner做性能测试来说吧。

    其实loadrunner做性能测试,就是直接通过接口来做的性能测试。通过模拟API请求。然后开启很多进程或者线程,同时去模拟API调用,借此对服务器形成压力。

    根据系统结构图,我们知道需要优化各个组件的配置,设置一些合适的参数,这就要求我们了解这些配置是干什么用的。

    对代码来说,可以对服务进行代码级别的性能测试。

    对数据库来说,可能要审查一下sql语句,数据表的字段,大小,索引是否合适等。以后会写这方面的文章。

    在发掘测试点的基础上,再去丰富自己的测试手段,再能在测试上走的更远。

  • 相关阅读:
    【转】 VC MFC 钩子 实现 自绘 窗体 标题栏 非客户区
    Scintilla开源库使用指南(二)
    Scintilla开源库使用指南(一)
    【转】MFC 多文档
    多视图识别
    获得MFC窗口其它类指针的方法
    sql2005 查看数据库或表大小的系统存储过程 sp_spaceused
    哪里是乐土?关于团队良性循环 (转)
    项目管理反思——前言
    项目经理思考——团队
  • 原文地址:https://www.cnblogs.com/liuweiqiang/p/3554849.html
Copyright © 2011-2022 走看看