文章分类 - 软件测试52讲
这里主要是记录一些读书笔记
软件测试52讲是在极客时间上购买的一个课程,作者是茹炳晟,eBay中国研发中心,测试基础架构技术主管
摘要:与开发工程师相比,你需要了解的技术种类要多得多,视野也要宽广很多,只是在每类技术的深度方面不如开发工程师。 你可以参照下面这个比喻,来理解开发工程师和测试工程师的对知识的要求:开发工程师通常是“深度遍历”,关注的是“点”;而测试工程师通常是“广度遍历”,关注的是“面”。 那么,测试工程师需要掌握的非
阅读全文
摘要:我以我们团队招聘功能测试和测试开发工程师为例,带你了解一下测试工程师的核心竞争力到底是什么。 案例一来自我们的资深功能测试工程师招聘。当时,有一位拥有近9年测试经验的资深测试候选人,我对他的简历还是比较满意的,所以就安排了面谈。但是,在聊的过程中我很快发现,这位候选人绝大多数的测试经验积累都“强”绑
阅读全文
摘要:软件项目,通常都会有详细的项目计划。软件测试作为整个项目中的重要一环,也要执行详细的测试计划。正所谓运筹帷幄之中,决胜千里之外,强调的就是预先计划的重要性和必要性。 在早期的软件工程实践中,软件测试计划的制定通常是在需求分析以及测试需求分析完成后开始,并且是整个软件研发生命周期中的重要环节。 但是,
阅读全文
摘要:测试工程师需要利用对需求的理解、高效的执行力以及严密的逻辑推理能力,迅速找出软件中的潜在缺陷,并以缺陷报告的形式递交给开发团队。缺陷报告是测试工程师与开发工程师交流沟通的重要桥梁,也是测试工程师日常工作的重要输出。作为优秀的测试工程师,最基本的一项技能就是,把发现的缺陷准确无歧义地表达清楚。 “准确
阅读全文
摘要:测试覆盖率通常被用来衡量测试的充分性和完整性,从广义的角度来讲,测试覆盖率主要分为两大类,一类是面向项目的需求覆盖率,另一类是更偏向技术的代码覆盖率。 需求覆盖率 需求覆盖率是指测试对需求的覆盖程度,通常的做法是将每一条分解后的软件需求和对应的测试建立一对多的映射关系,最终目标是保证测试可以覆盖每个
阅读全文
摘要:在前面的文章中,我介绍了为什么要做自动化测试,以及什么样的项目适合做自动化测试,那么现在我来说说软件开发生命周期的各个阶段都有哪些类型的自动化测试技术。 说到自动化测试,你看你最为熟悉的就是GUI自动化测试了。比如,早年的C/S架构,通常就是用自动化测试脚本打开被测应用,然后在界面上以自动化的方式执
阅读全文
摘要:自动化测试有哪些劣势? 测试的效率很大程度上依赖自动化测试用例的设计以及实现质量,不稳定的自动化测试用例实现比没有自动化更糟糕(因为实现自动化测试后,在手工测试上会减少一些关注) 实行自动化测试的初期,用例开发效率通常都很低,大量初期开发的用例通常会在整个自动化测试体系成熟,和测试工程师全面掌握测试
阅读全文
摘要:单元测试是指,对软件中的最小可测试单元在与程序其他部分相隔离的情况下进行检查和验证的工作,这里的最小可测试单元通常是指函数或者类。 单元测试都是以自动化的方式执行,所以在大量回归测试的场景下更能带来高收益。 单元测试代码里提供函数的使用示例,因为单元测试的具体表现形式就是对函数以各种不同输入参数组合
阅读全文
摘要:1.Web界面的GUI功能测试,需要考虑浏览器在有缓存和没有缓存下的表现;Web Service的API测试,需要考虑被测API所依赖的第三方API出错下的处理逻辑;对于代码级的单元测试,需要考虑被测函数的输入参数为空情况下的内部处理逻辑等。 2.在软件企业的具体实践中,为了降低对个人能力的依赖,通
阅读全文
摘要:针对“用户登录”功能,基于等价类划分和边界值分析方法,我们设计的测试用例包括:(刚刚及格的测试用例集)1. 输入已注册的用户名和正确的密码,验证是否登录成功;2. 输入已注册的用户名和不正确的密码,验证是否登录失败,并且提示信息正确;3. 输入未注册的用户名和任意密码,验证是否登录失败,并且提示信息
阅读全文