什么是软件测试
什么是软件测试?
验证软件功能是否满足用户的需求
软件测试最基本的活动就是再找bug
例如:一场考试,做完一遍之后,进行一遍检查,就是在测试
书籍:软件测试艺术
软件测试分类
测试对象:web测试 APP测试 游戏测试 嵌入式测试工程师
是否手工:手工 自动化
测试分类:功能,性能,安全
按级别:初级,中级,高级,资深,组长,主管,经理,总监
软件测试和研发的区别?
难易程度:开发广度小,专业度高;测试广度大,专业度低
技能要求:业务能力,设计和结构分析能力, 测试手段和工具的使用,用户模型分析和理解, 编程能力
测试和调试的区别:
目的不同:
测试的任务是发现程序中的缺陷;调试的任务是定位并且解决程序中的问题
参与角色不同:
测试主要是由测试人员和开发人员来执行,黑盒测试主要是测试人员完成,单元/集成测试主要是由开发人员执行。调试由开发人员完成
执行的阶段不同:
测试贯穿整个软件开发周期,调试一般在开发阶段
一个优秀的测试人员所具备的素质?(为什么要做软件测试)
- 思维模式
逆向思维:开发盖房子,测试拆房子。不走寻常路。
案例:手机中有两条通话记录,进行删除。删除为0后,继续删除。
发散性思维:探求多项答案
案例:测试一台自动售票机。正向,逆向,边界,压力,性能,耗电量,断电,外观,没零钱… - 兴趣
真的有兴趣么?而不是开发加班多,不想编码? - 性格特征
好奇心
成就感
敏感
不浮躁
善于怀疑
批判性思维:清楚–准确、切题–深刻,有意义,有逻辑性–公正、全面 - 能力
快速学习能力
沟通能力
文字能力
开发能力 - 责任感和压力
责任感:测试往往是产品的最后一个检验者;测试的工作成效很难衡量,测试用例执行、bug数目的多少都无
法说明产品是否能够交给用户使用。所以,责任感是最重要的测试必备素质之一。
压力:来自开发人员、用户、上级、自己的压力。测试人员的压力比想象中的要大。