1.什么是软件测试
验证软件是否满足用户的需求
2.软件测试和开发的区别
(1)软件测试和软件开发中调试的区别
目的不同:软件测试是检查软件的质量,发现程序中的缺陷(判断软件是 否满足用户的需求)
软件调试是定位并解决程序的问题
角色不同 : 软件测试:测试人员和开发人员执行,黑盒测试试油测试人员完成、单元/集成测试主要有开发人员执行。
软件调试:开发人员
阶段不同: 调试:只在开发阶段
测试:贯穿整个开发的生命周期
(2)难易程度,技能要求
开发广度小,专业度高。
测试广度大,专业度低。
3.一个测试人员苏具备的素质(为什么选择软件测试)
(1)软件测试这个岗位的兴趣
(2)有能力,有一定的编程能力,沟通,团结协作。
(3)责任感和承受一定的压力。
4.什么是需求
满足用户的期望或者规定的文档(合同,标准,规范)文档所需要的条件和权限
用户需求:用户想要软件实现的功能,非常简单,没有具体实现细节。
软件需求:描述来必须实现的功能,用户需求转化,是用户需求的具体实现细节。
5.什么bug
分为两种情况:
1.当软件需求规格(软件需求)存在并且合理,如果软件功能和软件需求规格不相符合,我们就说是软件错误(BUG)。
2.当软件需求规格不存在的时候,用户需求存在并且合理,软件功能和用户需求不相符,就是软件错误(BUG)
6.什么是测试用例
定义:向被测试系统发起的一组集合,这组集合包括测试数据,测试步骤,测试平台,预期结果等操作。
7.开发模型
软件的生命周期:需求、计划、设计、编码、测试、运行维护
敏捷开发有很多种方式,其中scrum是比较流行的一种。
1.scrum的角色
2.迭代开发
与瀑布不同,scrum将产品的开发分解为若干个小sprint(迭代),其周期从1周到4周不等,但不会超过4周。参与的团队成员一般是5到9人。每期迭代要完成的user story是固定的。每次迭代会产生一定的交付。
3.scrum的基本流程
8.软件测试V模型
优点:左边开发的每一个阶段和右面测试的阶段一一对应,是右面测试的每一个阶段的依据.
缺点:测试介入晚,前期的错误和风险到后期才发现,会失去及时纠正的机会.
9.软件测试W模型
优点:测试阶段和开发阶段在两个独立的V模型里面,测试介入比较早,在项目初期就介入,前期的风险可以及时发现
缺点:w模型每一个阶段仍然是一个串行的过程,不能呢个适应需求变化的项目,所以无法应用到敏捷开发