什么是软件测试?说说你的理解
软件测试就是执行和运行软件的过程,其目的是为了发现软件功能和需求不相符的地方,或者寻找实际输出和预期之间的差异。
调试和测试的区别是什么?
- 目的不同
- 测试的任务是发现程序中的缺陷
- 调试的任务是定位并且解决程序中的问题
- 参与的角色不同
- 测试主要是由测试人员和开发人员来执行,黑盒测试主要由测试人员完成,单元 / 集成测试主要是由开发人员执行
- 调试有开发人员完成
- 执行的阶段不同
- 测试贯穿整个软件开发生命周期
- 调试一般在开发阶段
软件测试和软件开发的区别?说说你的理解。
- 研发主要以编码为主,而测试以测试为主,开发为辅
- 难易程度:开发广度小,专业度高。测试广度大,专业度低
- 工作环境:基本相似
- 薪水:中小企业总体比研发低,自动化等专业测试领域和研发基本无差距。大厂研发测试基本无差别
- 发展前景:自动化测试,安全测试等领域发展前景和研发基本一致
- 繁忙程度:一般比研发轻松,但敏捷模式下差距不大,产品发布前压力比较大
- 技能要求:测试要求更广泛:业务能力,设计和架构分析能力,测试手段和工具使用,用户模型分析和理解,编程能力
- 备注:答案不固定,上述只适合参考,切记不可全部背诵
你能想象到的优秀的测试人员应该具备哪些素质?
答案包含但不限于以下几个方面:
-
- 思维模式
逆向思维:开发盖房子,测试拆房子。不走寻常路。
案例:手机中有两条通话记录,进行删除。删除为0后,继续删除。
发散性思维:探求多项答案
案例:测试一台自动售票机。正向,逆向,边界,压力,性能,耗电量,断电,外观,没零钱…
- 思维模式
-
- 兴趣
真的有兴趣么?而不是开发加班多,不想编码?
- 兴趣
-
- 性格特征
好奇心
成就感
敏感
不浮躁
善于怀疑
批判性思维:清楚–准确、切题–深刻,有意义,有逻辑性–公正、全面
- 性格特征
-
- 能力
快速学习能力
沟通能力
文字能力
开发能力
- 能力
-
- 责任感和压力
责任感:测试往往是产品的最后一个检验者;测试的工作成效很难衡量,测试用例执行、bug数目的多少都无法说明产品是否能够交给用户使用。所以,责任感是最重要的测试必备素质之一。
压力:来自开发人员、用户、上级、自己的压力。测试人员的压力比想象中的要大。
- 责任感和压力
- 注意:可以结合上述内容,再结合自身回答,不宜全部背诵