前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >这10道经典软件测试题,你都会么?

这10道经典软件测试题,你都会么?

作者头像
IDO老徐
发布2019-12-11 14:57:17
5800
发布2019-12-11 14:57:17
举报
文章被收录于专栏:简尚简尚

IDO老徐,注: 验证一项技能,是否掌握的最好方式,还是通过完成通关作业的形式 。这也是为何很多初中级岗位面试,是一定会有笔试题这个环节 。 今天,这篇文章,通过10道题,考考大家,是否掌握了软件测试职业,一些必备的基础知识 。 请花时间,完整、仔细的看看题目,写下你的答案 。 当然,底部,是有给大家列出答案的,相信你不会,直接去看答案的 。

- 正文 -

大家好,我是《软件测试52讲》专栏的作者茹炳晟,我用我16年的测试知识和经验,梳理出了这一整套软件测试的知识专栏。

现在,我从专栏中精心挑选了10个核心知识点,组成了10道测试题目(包含5道选择题,5道问答题)。无论是否是我专栏的订阅者,你都可以用这10道题目,找到自己的薄弱点,对症下药;如果你已经学习了一段时间,可以用这10道题目,检测一下学习成果,查漏补缺。

我的建议是:你可以拿出纸笔,写下这10道题的答案,然后再与文末的答案进行对照。

选择题

1. (单选)当需要对某个系统进行测试的时候,应该从哪些方面来设计测试用例?

A. 功能验证

B. 性能相关的验证

C. 兼容性相关的验证

D. 安全性相关的验证

E. 以上全是

2. (多选)软件测试过程中,测试数据准备的痛点有哪些?(多选)

A. On-the-fly测试数据准备的时间消耗

B. Out-of-box测试数据的“脏数据”

C. 测试数据本身组合的复杂性和多样性

D. 性能测试数据准备的时间消耗

E. 微服务化后,跨多个微服务的数据准备缺乏完整的知识体系

F. 微服务化后,测试数据准备的环境依赖性

3. (单选)无头浏览器的主要应用场景是?

A. 网络爬虫

B. GUI自动化功能测试

C. 页面监控

D. 以上全是

4. (单选)以下不属于API测试工具的是哪个?

A. Postman

B. SoapUI

C. JMeter

D. Selenium

5. (单选)以下属于移动应用测试的工具是哪个?

A. Appium

B. UFT

C. TestNG

D. LoadRunner

问答题

1. GUI自动化测试脚本分层设计的最佳实践是怎么样?

2. 多个API连续调用的测试用例的难点是什么?你是如何来解决的?

3. 单元测试中,桩函数和Mock函数用来解决什么问题,两者又有什么区别?

4. 性能压测过程中,当面对大量并发用户调用的时候,服务器端CPU的使用率是高好还是低好?为什么?

5. 当需要在尽可能短的时间内完成大量GUI自动化测试用例的执行时,业界主流的解决方案是什么?

/ 答案与解析

1、(单选)答案:E

解析:在专栏第1篇文章《你真的懂测试吗?从“用户登录”测试谈起》中,我和你分享了设计一个测试用例,除了要考虑显示的功能性需求外,还要涉及安全性、性能、兼容性等非功能性需求的验证。

2、(多选)答案:ABCDEF

解析:在专栏的第15篇文章《过不了的坎:聊聊GUI自动化过程中的测试数据》、第36篇文章《浅谈测试数据的痛点》中,我从测试时机准备的角度,和你分享了测试数据准备有哪些痛点。

而关于现在流行的微服务模式,由于每个单一功能的服务都是独立分开部署的,所以我们在准备测试数据时,还可能会遇到诸如环境依赖、跨多个微服务的数据准备缺乏完整的知识体系等问题。

3、(单选)答案:D

解析:我在专栏的第16篇文章《脑洞大开:GUI测试还能这么玩(Page Code Gen + Data Gen + Headless)?》中,和你分享过:无头浏览器的主要应用场景,包括GUI自动化测试、页面监控以及网络爬虫这三种。

4、(单选)答案:D

解析:Selenium属于GUI自动化测试工具。我还在第12篇文章《从0到1:你的第一个GUI自动化测试》中,基于Selenium和你一起搭建了我们的第一个测试用例,你还记得吗?

5、(单选)答案:A

解析:UFT(以前的QTP)属于一款GUI测试工具,LoadRunner属于性能测试工具。而TestNG是一个用来简化广泛的测试需求的测试框架,适用于从单元测试到集成测试阶段的测试。

Appium则是一款很好用的移动测试工具。如果你不记得它的使用方法了,可以再回顾下第21篇文章《移动测试神器:带你玩转Appium》中的内容。

6、GUI自动化测试脚本分层设计的最佳实践是怎样的?

考点分析:GUI自动化测试脚本的分层设计原理。

解答:

大量GUI自动化测试能够成功的关键,就在于脚本的分层设计。而脚本分层设计的核心思想就是模块化。

首先,我们需要对页面进行抽象,形成页面对象模型。在这样的测试用例中,你看到的都是类似于XXXPage.YYYComponent.ZZZOperation的语句。它们和实际的手工测试可以建立一一对应的关系,用通俗的话语来讲,就是某某页面上的某某元素,执行了某某操作。

接下来,为了使GUI自动化测试脚本更加符合业务场景的描述,同时进一步提高脚本的封装性和可重用性,就需要引入业务流程脚本的概念。这里,业务流程和实际的业务流程也是一一对应的关系。这样,测试用例就可以通过调用业务流程脚本来实现,测试用例本身的可读性以及可维护性也会更好。同样地,业务流程脚本,也是基于页面对象模型实现的。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-11-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 简尚 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 选择题
  • 问答题
  • / 答案与解析
相关产品与服务
前端性能监控
前端性能监控(Real User Monitoring,RUM)是一站式前端监控解决方案,专注于 Web、小程序等场景监控。前端性能监控聚焦用户页面性能(页面测速,接口测速,CDN 测速等)和质量(JS 错误,Ajax 错误等),并且联动腾讯云应用性能监控实现前后端一体化监控。用户只需要安装 SDK 到自己的项目中,通过简单配置化,即可实现对用户页面质量的全方位守护,真正做到低成本使用和无侵入监控。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档