什么是软件测试

什么是软件测试?

验证软件功能是否满足用户的需求
软件测试最基本的活动就是再找bug
例如:一场考试,做完一遍之后,进行一遍检查,就是在测试
书籍:软件测试艺术

软件测试分类

测试对象:web测试 APP测试 游戏测试 嵌入式测试工程师
是否手工:手工 自动化
测试分类:功能,性能,安全
按级别:初级,中级,高级,资深,组长,主管,经理,总监

什么是软件测试
什么是软件测试

软件测试和研发的区别?

难易程度:开发广度小,专业度高;测试广度大,专业度低
技能要求:业务能力,设计和结构分析能力, 测试手段和工具的使用,用户模型分析和理解, 编程能力

测试和调试的区别:

目的不同:
测试的任务是发现程序中的缺陷;调试的任务是定位并且解决程序中的问题

参与角色不同:
测试主要是由测试人员和开发人员来执行,黑盒测试主要是测试人员完成,单元/集成测试主要是由开发人员执行。调试由开发人员完成

执行的阶段不同:
测试贯穿整个软件开发周期,调试一般在开发阶段

一个优秀的测试人员所具备的素质?(为什么要做软件测试)

  1. 思维模式
    逆向思维:开发盖房子,测试拆房子。不走寻常路。
    案例:手机中有两条通话记录,进行删除。删除为0后,继续删除。
    发散性思维:探求多项答案
    案例:测试一台自动售票机。正向,逆向,边界,压力,性能,耗电量,断电,外观,没零钱…
  2. 兴趣
    真的有兴趣么?而不是开发加班多,不想编码?
  3. 性格特征
    好奇心
    成就感
    敏感
    不浮躁
    善于怀疑
    批判性思维:清楚–准确、切题–深刻,有意义,有逻辑性–公正、全面
  4. 能力
    快速学习能力
    沟通能力
    文字能力
    开发能力
  5. 责任感和压力
    责任感:测试往往是产品的最后一个检验者;测试的工作成效很难衡量,测试用例执行、bug数目的多少都无
    法说明产品是否能够交给用户使用。所以,责任感是最重要的测试必备素质之一。
    压力:来自开发人员、用户、上级、自己的压力。测试人员的压力比想象中的要大。