测试基础篇二 面试挺常见

作者: 小菠萝测试笔记

测试流程(各有千秋)

1、测试人员参与需求评审、交互评审、视觉评审;理解需求,进行需求分析 2、测试负责人编写测试计划,分配测试任务,评估测试周期 3、测试人员整理交互or需求疑难点,确认异常场景or特殊情况下的交互细节,最好是能划出新功能的数据流图\&流程图 4、测试人员编写测试点,转化测试用例,评审测试点or测试用例 5、开发送测(提测)前,开发自行走查,产品视觉验收,若有必要,测试可介入冒烟测试 6、送测(提测)阶段,缺陷管理,发现bug,提交bug 7、博主这边是分A1,A2,A3…阶段,一般A1过新功能测试用例\&主流程回归,A2验证bug\&交叉测试\&拓展测试,A3验证bug\&拓展测试 8、预发(灰发)环境验证 9、线上环境验证 10、版本复盘

黑盒测试相关

黑盒测试主要是为了发现以下几类错误 1、是否有不正确或遗漏的功能? 2、在接口上,输入是否能正确的接受?能否输出正确的结果? 3、是否有数据结构错误或外部信息(例如数据文件)访问错误? 4、性能上是否能够满足要求? 5、是否有初始化或终止性错误? 黑盒测试优点 1.比较简单,不需要了解程序内部的代码及实现,因为与内部实现无关; 2.从用户角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题; 3.基于软件开发文档,所以也能知道软件实现了文档中的哪些功能; 4.在做软件自动化测试时较为方便 黑盒测试缺点 1.不可能覆盖所有的代码,覆盖率较低; 2.部分路径不能测试到,不能测试程序中隐藏的错误; 3.自动化测试的复用性较低 黑盒测试方法

等价类、边界值、因果图、判定表、状态迁移、正交实验、场景法、错误推断

自动化测试相关

自动化测试的优点 1、回归测试更方便,由于回归测试的额动作和用例是完全设计好,测试结果也是可以预料的,将回归测试自动运行,可以提高测试效率,缩短回归测试时间 2、运行更多更繁琐的测试 3、可以执行一些手工测试困难的测试,可以通过自动化测试模拟同时有大量用户的测试 4、测试具有一致性和可重复性,每次测试的结果和执行的内容的一致性可以得到保障,达到测试的可重复的效果 5、测试的复用性,实现在不同的测试过程中使用相同的用例 6、测试的执行可靠性,按脚本执行,后续定位复现有明确的路径可循 7、资源利用率高,人力成本低 8、基本的、逻辑性不强的操作,性能测试、压力测试、回归测试,自动化测试很大优势 自动化测试的缺点 1、手工测试比自动测试发现的缺陷更多 2、对测试的依赖性大 3、只适合回归测试 4、手工测试编写时间少于测试脚本编写时间 5、手工测试可以靠人的想象力去测试, 而工具是死的 6、自动化测试可能会制约软件开发,脚本维护会受到限制,从而制约软件的开发 总结:自动化测试是对手工测试的一种补充,自动化测试不可能完全替代手工测试,因为很多数据的正确性、界面是否美观、业务逻辑的满足程度等都离不开测试人员的人工判断

app常见测试点

1、安装、卸载 apk上安装与卸载,在工具上可以安装卸载 2、兼容性测试 系统版本,安卓版本,尺寸 3、异常测试 断网、断电、服务器异常情况下,客户端是否正常处理 4、在线升级测试 在线升级,升级后可以正常使用 5、易用性测试 操作简单,符合用户使用习惯 6、交互性测试 来电,来短信,低电量测试,拔充电线会不会影响app 7、功能测试 检验功能是否符合需求,涉及到UI层,接口,数据,服务端,代码逻辑等。 8、稳定性测试 通过Monkey:命令行工具,对正在开发的应用程序进行压测,向系统发送伪随机的用户事件流(按键输入、触屏输入、手势输入)进行压测 9、安全测试 是否容易被外界破解,是否存在被恶意代码注入的风险 10、性能测试 应用测试、ROM测试、客户端运行时设备的CPU、GPU、流量、耗电量,响应时间 11、自动化测试:robotium、Appium 12、外网场景测试 不同网络场景,wifi、3g、4g、电信、移动、联通、弱网场景,通过fiddler 13、中断测试(电话接入、来短信、电量不足提示灯外部事件)

app测试和web测试的区别

|--------|-------------|--------------------------------|
|        | web         | app                            |
| 性能测试   | 响应时间...     | 加上:流量、电量、CPU、GPU、内存...         |
| 兼容测试   | 不同浏览器和浏览器版本 | 加上:手机的尺寸、分辨率、系统版本、安卓版本         |
| 交叉事件测试 |             | 在操作某个软件的时候,来电话、来短信,电量不足提示等外部事件 |
| 操作类型测试 |             | 横屏测试,手势测试                      |

冒烟测试和回归测试的区别

冒烟测试:新版本验证测试,主要确认新的版本是否存在致命性bug,功能可以正常运行,不会影响下一轮测试,不要求覆盖面有多广,但是要保证被测对象的主功能点得到测试,还要保证所有被修改过以及修改相关的功能都是可用的,若都通过则可以进行系统测试 回归测试:是软件维护阶段对软件修改后进行的测试,指修改了旧代码后,重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误

静态测试和动态测试的区别

静态测试:不运行被测程序本身,通过评审文档和阅读代码等方式测试软件 动态测试:通过运行被测程序,检查运行结果与预期结果的差异,通常使用白盒和黑盒测试从不同的角度设计测试用例来查找代码中的错误 键字:不运行,文档,代码

    运行,结果差异,黑盒白盒

α、β、λ测试的区别

  • α测试:是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的测试。目的是评价软件产品的FURPS(即功能、可使用性、可靠性、性能和支持)
  • β测试:是软件的多个用户在一个或多个用户的实际使用环境下进行的测试。开发者通常不在测试现场,Beta测试不能由程序员或测试员完成。(文档,客户培训,产品支持,可支持性)
  • λ测试:是第三个阶段,此时产品已经相当成熟,只需在个别地方再做进一步的优化处理即可上市发行

负载测试(Load testing)、压力测试(stress testing)和性能测试(Performance Evaluation Test)的区别

  • 性能测试:为了获得系统在某种特定的条件下(包括特定的负载条件下)的性能指标数据
  • 负载测试:模拟实际软件系统所承受的负载条件的系统负荷,通过不断加载(逐渐增加模拟用户的数量)或其他加载方式来观察不同负载下系统的响应时间和数据吞吐量、系统占用的资源(如CPU、内存),以检验系统的行为和特性,以发现系统可能存在的性能瓶颈、内存泄漏、不能实时同步等问题。负载测试更多地体现 了一种方法或一种技术
  • 压力测试:在强负载(大数据量、大量并发用户等)下的测试,查看应用系统在峰值使用情况下操作行为,从而有效地发现系统的某项功能隐患、系统是否具有良好的容错能力和可恢复能力。压力测试分为高负载下的长时间的稳定性压力测试和极限负载情况下导致系统崩溃的破坏性压力测试

什么是需求文档测试?

测试需求中是否存在逻辑矛盾以及需求在技术上是否可以实现 关键字:测试需求,逻辑矛盾,技术实现

什么是设计文档测试?

测试设计是否符合全部需求以及设计是否合理 关键字:测试设计,符合需求,是否合理

原文创作:小菠萝测试笔记

原文链接:https://www.cnblogs.com/poloyy/p/12104590.html

文章列表

更多推荐

更多
  • Java测试驱动开发-十二、通过实现连续交付利用 TDD 案例研究可怕的赌博公司,探索代码库,释放程序,部署到生产环境,增加测试覆盖率,结论,可能的改进,实施持续集成,走向持续交付,詹金斯装置,自动化构建,第一次执行,下一步是什么?,这仅仅是开始,这不一定是结束, “没有什么比结果更能说
  • Java测试驱动开发-一、为什么我应该关心测试驱动的开发? 为什么是 TDD?,理解 TDD,红绿重构,速度是关键,这与测试无关,测试,黑盒测试,白盒试验,质量检查和质量保证之间的区别,更好的测试,嘲笑,可执行文件,无调试, 这本书是由开发人员为开发人员编写的。因此,大部分学习将通过代码进
  • Java测试驱动开发-十一、把它们放在一起 简而言之,TDD,最佳做法,命名约定,过程,开发实践,工具, “如果你总是做你一直做的事,那么你将永远得到你一直得到的。”——阿尔伯特·爱因斯坦我们经历了大量的理论和更多的实践。整个旅程就像一列高速行驶的火车,我们几乎没有
  • Java测试驱动开发-零、前言 这本书是给谁的,充分利用这本书,下载示例代码文件,下载彩色图像,使用的惯例, 测试驱动开发已经有一段时间了,很多人还没有采用它。这背后的原因是 TDD 很难掌握。尽管这个理论很容易掌握,但要真正精通它需要大量的实践。本书的作者多年
  • Java测试驱动开发-四、单元测试—关注你做了什么,而不是已经做了什么 单元测试什么是单元测试?,为什么要进行单元测试?,代码重构,为什么不专门使用单元测试呢?,用 TDD 进行单元测试,TestNG,TestNG 与 JUnit 摘要,遥控船舶要求,遥控船舶的研制,项目设置,助手类,需求–起点和方向,规格
  • Java测试驱动开发-五、设计—如果它不可测试,那么它就设计得不好 我们为什么要关心设计?,设计原则,你不会需要它的,不要重复你自己,保持简单和直接,奥卡姆剃刀,坚实的原则,连接 4,要求,测试 Connect 4 的最后一个实现,要求 1–游戏的棋盘,要求 2–介绍光盘,要求 3–球员轮换,要求 4–
  • Java测试驱动开发-二、工具、框架和环境 吉特,虚拟机,Vagrant,Docker,构建工具,综合发展环境,创意演示项目,单元测试框架,朱尼特,TestNG,Hamcrest 和 AssertJ,汉克雷斯特,资产,代码覆盖工具,杰科科,模拟框架,Mockito,轻松的,模拟的
  • Java测试驱动开发-六、模拟—删除外部依赖项 嘲笑,为什么嘲笑?,术语,模拟对象,Mockito,Tic Tac Toe v2 要求,开发 TicTacToe v2,要求 1–门店移动,规范–数据库名称,实施,规范–Mongo 集合的名称,实施,重构,规范–将项目添加到 Mongo
  • Java测试驱动开发-九、重构遗留代码—使其再次年轻 遗留代码,遗留代码示例,识别遗留代码的其他方法,遗留代码更改算法,应用遗留代码更改算法,确定变化点,寻找测试点,打破依赖关系,写作测试,卡塔演习,卡塔遗产酒店,描述,技术意见,添加新功能,黑盒或峰值测试,初步调查,如何找到重构的候选对象
  • Java测试驱动开发-八、BDD—与整个团队合作 不同规格,文档,编码员的文档,非编码人员的文档,行为驱动开发,叙述,情节,书店 BDD 故事,杰伯哈夫,JBehave 转轮,未决步骤,Selenium 和 Selenide,JBehave 步骤,最终验证, “我不是一个优秀的程
  • 近期文章

    更多
    文章目录

      推荐作者

      更多