
测试36讲
shrimp8
这个作者很懒,什么都没留下…
展开
-
深入浅出网站高可用架构设计
网站高可用指的就是,在绝大多的时间里,网站一直处于可以对外提供服务的正常状态。业界通常使用有多少个“9”来衡量网站的可用性指标,具体的计算公式也很简单,就是一段时间内(比如一年)网站可用的时间占总时间的百分比。我用下面这个表格,列出了四种最常见的可用性等级指标,以及允许的系统不可用时长。可用性等级 通俗叫法 量化的可用性等级 一年中允许的不可用时长 基本可用 2...原创 2019-10-30 10:14:42 · 614 阅读 · 0 评论 -
深入浅出网站高性能架构设计
性能是网站的重要指标,如果一个网站的访问速度很慢,就会直接导致大量用户的流失。所以说,性能是设计网站架构时要考虑的关键因素。也因此,网站的性能问题成了网站架构升级、优化的导火索。目前,为了优化网站性能,业界出现了很多相关的架构改进方案和技术手段。而包括了这些升级、优化网站性能的方案、技术手段在内的高性能架构设计,是个很大的话题,单单依靠几篇文章是很难讲清楚的。所以,我从中精选了一些对测试工程师...原创 2019-10-30 09:56:34 · 694 阅读 · 0 评论 -
后端性能测试工具原理与行业常用工具简介
后端性能测试和后端性能测试工具之间的关系是什么?后端性能测试工具是实现后端性能测试的技术手段,但是千万不要简单地把使用后端性能测试工具等同于后端性能测试,它只是后端性能测试中的一个必要步骤而已。完整的后端性能测试应该包括性能需求获取、性能场景设计、性能测试脚本开发、性能场景实现、性能测试执行、性能结果报告分析、性能优化和再验证。在这其中,后端性能测试工具主要在性能测试脚本开发、性能场景...原创 2019-10-28 15:10:43 · 1091 阅读 · 0 评论 -
性能测试的基本方法与应用领域
并发用户数、响应时间、系统吞吐量,这三个名词的含义可能就已经让你感觉云里雾里了,因此我会通过一个我们日常生活中的体检为例,再来解释一下它们到底是什么,以及它们之间的关系和约束。你先来想象这样一个场景:假设你找了一份新工作,入职前需要到体检中心完成入职体检。在体检中心做检查的过程,通常是先到前台登记个人信息并领取体检单,然后根据体检单的检查项目依次完成不同科室的检查。假设一共有5个科室,...原创 2019-10-28 14:54:50 · 901 阅读 · 1 评论 -
解读不同视角的软件性能与性能指标
目前,对软件性能最普遍的理解就是软件处理的及时性。但其实,从不同的系统类型,以及不同的视角去讨论软件性能,都会有所区别。对于不同类型的系统,软件性能的关注点各不相同,比如:Web类应用和手机端应用,一般以终端用户感受到的端到端的响应时间来描述系统的性能; 非交互式的应用,比如典型的电信和银行后台处理系统,响应时间关注更多的是事件处理的速度,以及单位时间的事件吞吐量。这很容易理解。同样地...原创 2019-10-28 14:36:21 · 1679 阅读 · 0 评论 -
浅谈移动应用测试方法与思路
在我看来无论是移动端测试还是PC端测试,都属于GUI测试的范畴,所以基本的测试思路,比如基于页面对象封装和基于业务流程封装的思想是相通的,之前介绍的那些脚本分层的实现方法也都同样适用于移动端的GUI测试。与此同时,移动端应用的测试也会因为其自身特点,有一些独特的测试方法与思路。严格来讲,移动端应用又可以进一步细分为三大类:Web App、Native App和Hybrid App。所以,我今天...原创 2019-10-25 13:58:31 · 763 阅读 · 0 评论 -
软件测试工程师需要掌握的非测试知识有哪些?
测试工程师需要掌握的非测试知识主要有哪些呢?如果你花时间静下心来仔细想一下,很可能会把自己吓一大跳,需要了解掌握的非测试知识实在是太多了,这简直就是一个mini版的系统架构师啊!小到Linux/Unix/Windows操作系统的基础知识,Oracle/MySQL等传统关系型数据库技术,NoSQL非关系型数据库技术,中间件技术,Shell/Python脚本开发,版本管理工具与策略,CI/CD...原创 2019-10-23 15:25:28 · 871 阅读 · 0 评论 -
软件测试工程师的核心竞争力是什么?
我以我们团队招聘功能测试和测试开发工程师为例,带你了解一下测试工程师的核心竞争力到底是什么。 案例一来自我们的资深功能测试工程师招聘。当时,有一位拥有近9年测试经验的资深测试候选人,我对他的简历还是比较满意的,所以就安排了面谈。但是,在聊的过程中我很快发现,这位候选人绝大多数的测试经验积累都“强”绑定在特定的业务领域。 如果抛开这个特定的业务领域,他对测试技术本身以及产品技术实现都缺乏系统...原创 2019-10-23 15:10:54 · 1089 阅读 · 0 评论 -
讲以终为始,如何才能做好测试计划?
软件项目,通常都会有详细的项目计划。软件测试作为整个项目中的重要一环,也要执行详细的测试计划。正所谓运筹帷幄之中,决胜千里之外,强调的就是预先计划的重要性和必要性。在早期的软件工程实践中,软件测试计划的制定通常是在需求分析以及测试需求分析完成后开始,并且是整个软件研发生命周期中的重要环节。但是,在敏捷开发模式下,你可能会有这样的疑问,软件测试计划还有那么重要吗?我所在的软件项目压根儿就没有...原创 2019-10-23 10:18:17 · 513 阅读 · 0 评论 -
如何高效填写软件缺陷报告?
测试工程师需要利用对需求的理解、高效的执行力以及严密的逻辑推理能力,迅速找出软件中的潜在缺陷,并以缺陷报告的形式递交给开发团队,这看起来是不是有点像侦探柯南呢。缺陷报告是测试工程师与开发工程师交流沟通的重要桥梁,也是测试工程师日常工作的重要输出。作为优秀的测试工程师,最基本的一项技能就是,把发现的缺陷准确无歧义地表达清楚。“准确无歧义地表达”意味着,开发工程师可以根据缺陷报告快速理解缺陷...原创 2019-10-23 09:51:18 · 634 阅读 · 0 评论 -
为什么要做自动化测试?什么样的项目适合做自动化测试?
不管你是刚入行的小白,还是已经在做软件测试的工作,相信你一定听说过或者接触过自动化测试。那么,自动化测试到底是什么意思呢?顾名思义,自动化测试是,把人对软件的测试行为转化为由机器执行测试行为的一种实践,对于最常见的GUI自动化测试来讲,就是由自动化测试工具模拟之前需要人工在软件界面上的各种操作,并且自动验证其结果是否符合预期。你是不是有点小激动?这似乎开启了用机器代替重复手工劳动的自动化时...原创 2019-10-22 14:23:14 · 6051 阅读 · 1 评论 -
什么是单元测试?如何做好单元测试?
在正式开始今天的话题之前,我先给你分享一个工厂生产电视机的例子。工厂首先会将各种电子元器件按照图纸组装在一起构成各个功能电路板,比如供电板、音视频解码板、射频接收板等,然后再将这些电路板组装起来构成一个完整的电视机。如果一切顺利,接通电源后,你就可以开始观看电视节目了。但是很不幸,大多数情况下组装完成的电视机根本无法开机,这时你就需要把电视机拆开,然后逐个模块排查问题。假设你发现是供电...原创 2019-10-22 12:05:10 · 6568 阅读 · 1 评论 -
如何设计一个“好的”测试用例?
在正式开始讨论之前,我先跟你聊聊,什么才是“好的”测试用例,这个“好”又应该体现在哪些方面。这是一个看似简单实则难以回答的问题,即使深入思考后,也很难有非常标准的答案。通常,你的第一反应很可能会是“发现了软件缺陷的测试用例就是好的用例”,我可能会反问你“如果说测试用例发现了缺陷就是好用例,那么在该缺陷被修复后,同样的用例难道就不是好用例了吗?”。你可能还会说“发现软件缺陷可能性大的测试用例...原创 2019-10-22 11:45:34 · 3389 阅读 · 2 评论 -
你真的懂测试吗?从“用户登录”测试谈起
可能你会说,“用户登录”这个测试对象也有点太简单了吧,我只要找一个用户,让他在界面上输入用户名和密码,然后点击“确认”按钮,验证一下是否登录成功就可以了。的确,这构成了一个最基本、最典型的测试用例,这也是终端用户在使用系统时最典型的Happy Path场景。但是作为测试工程师,你的目标是要保证系统在各种应用场景下的功能是符合设计要求的,所以你需要考虑的测试用例就需要更多、更全面,于是你可能会根...原创 2019-10-22 11:27:19 · 1235 阅读 · 0 评论