一、软件测试的基本概念1.什么是软件测试? 软件测试是使用人工或自动的手段来运行或测定某个软件系统的过程,其目的在于检验它是否满足了用户的需求。 软件测试贯穿了软件开发的生命周期。 2.软件测试和软件开发的区别?软件测试和软件开发都是软件生命周期的重要组成部分,测试和开发有着一对一的关系,测试的工作是对开发成果的检验。 测试是由开发人员和测试人员共同完成的。 3.什么是需求?用户期望和满足文档、规则、标准等规定所需要的条件和权限。 用户需求一般比较粗略,那么此时需要软件需求来把用户需求进行细化和规范,把用户的需求变成一个可实现化的过程文档。 需求是软件测试的依据。 验证需求,保证需求正确可实现、细化需求,从需求中提炼出一个个的测试项。 4.什么是BUG?当且仅当,程序规格说明书(软件需求)存在并且合理,如果软件功能和软件规格说明书不相符合,那么就说是软件错误; 当软件需求不存在,用户需求存在并且合理,软件功能和用户功能不相符合,那么就是软件错误。 5.如何描述一个BUG?(1)测试版本:出现问题的版本号。 (2)测试环境:分为硬件环境和软件环境,如果是web项目,需要描述浏览器版本,客户机操作系统等,如果是app项目,需 要描述机型、分辨率、操作系统版本等。详细的环境描述有利于故障的定位。 对于web系统,MAC、Windows操作系统,不同的浏览器:谷歌、Edge、火狐、搜狗、QQ、Safari、360、猎豹等。 对于APP:软件环境:IOS系统、安卓系统、鸿蒙系统、塞班、Windows系统;硬件环境:不同的手机品牌,不同的手机系列等。 (3)测试步骤:测试数据和执行测试的详细步骤,描述问题重现的最短步骤。为了方便开发人员复现问题。 (4)实际结果:实际出现错误的情况。 (5)预期结果:需求期望的结果。 (6)bug产生时的log日志,错误截图等。 6.BUG的级别?(1)崩溃Blocker 系统崩溃,不能运行,死循环,数据库死锁,资源分配不均衡,黑屏,闪退,阻塞,此时可以回归上一个可用并且稳定的历史版本。 (2)严重Critical 服务器可以使用,但是不稳定,继续使用会产生严重的错误;比如以及菜单错误,数据库插入用户数据错误,威胁到用户的安全等。 (3)一般Major 系统可以稳定的运行,次要的功能没有实现,提示语言不完善,弹出框没有关闭按钮,不影响用户的使用。 (4)次要Minor 提示信息重叠,界面排版不符合用户使用习惯,颜色不符合软件的使用场景。 7.BUG的生命周期?测试人员应该跟踪一个Bug的整个生命周期,从Open到Closed的所有状态。
|