• 0
  • 0
分享
  • 服务端测试工程师面试经验——软件测试圈
  • 恬恬圈 2024-09-14 10:54:28 字数 2755 阅读 157 收藏 0

  像APP、WEB这种测试工程师入门级测试技能,对大家来说经常是点点点,但是现在业内大多岗位都是服务端测试,从前端页面发起的测试很容易被替代。

  面试一般会重点考察服务端的测试,说到服务端的话当然离不开接口测试,互联网测试从业者的要求越来越高,不仅仅局限于术,更要在道上有所造诣,在面试过程中的考察点一般会涉及以下几点:

  1、软实力考察

  面试官会给到候选人一个比较有挑战性的任务,考察其面对问题的态度、分析问题的思路;如果给一个需求如何保证质量,考察责任心;沟通过程是否主动,因为测试工程师对沟通的要求相对来说是比较高的;测试的过程描述是否详细,认证细致也是测试工程师及其优秀的一种品质。

  2、测试基础

  什么是API?

  API是(Application Programming Interface)首字母缩略词,即应用程序编程接口。API是一组用于构建软件应用程序的规程,协议和工具。API充当软件应用程序之间的接口,并允许两个软件应用程序相互通信。API是一组软件功能,可以由其他软件执行。

  什么是API测试?

  API测试是一种软件测试,涉及直接测试API,也是集成测试的一部分,用于检查API是否满足应用程序的功能,可靠性,性能和安全性方面的期望。在API测试中,我们主要关注软件架构的业务逻辑层。可以在包含多个API的任何软件系统上执行API测试。测试人员模拟客户端向服务器发送报文请求,服务器接收请求报文后对相应的报文做处理并向客户端返回应答,客户端接收应答的一个过程。

  涉及两大类:

  1)代码内部接口调用,代码A与代码B在组合的时候,必然需要定义一些名称以及参数、类型,这种在测试中一般划分在白盒测试中,对内部逻辑进行测试。

  2)系统与系统之间,通过网络数据的传递进行交互,这种在测试中一般划分在黑盒测试中,也就是看不到代码,但可以通过各种手段将网络数据发送到接口从而得到接口的响应信息,达到测试的目标。

  常见的API测试类型有哪些?

  API测试通常涉及以下实践:

  单元测试:不依赖外部的数据库,本地调试接口,确保接口的请求、返回符合预期

  功能测试:针对接口业务功能做用例设计,通过接口调用工具发起测试执行

  负载测试:通过压力测试评估接口的性能

  安全测试:检测接口是否存在安全漏洞

  故障测试:模拟超时、依赖服务故障、网络故障等,检测接口稳定性

  3、网络通讯协议和RPC通信

  常见的网络协议有TCP、UDP、HTTP,常用的rpc框架有dubbo、thrift、sofa等,面试时经常会了解如下内容:

  HTTP: HTTP(超文件传输协议)是一种应用层的网络协议,当前大多数web应用都构建在HTTP协议之上,目前广泛使用的是HTTP/1.1版本。它具有以下几个主要特点:

  1)客户机-服务器模型,用于本地浏览器与远程WEB服务器的信息交互 ;

  2)请求-响应模式,浏览器为单个事务发起连接请求,服务器在响应这个请求后立即关闭连接(开启了keep-alive除外);

  3)无状态协议,协议本身对事务处理没有记忆能力,同一台客户机和服务器的相邻两次连接在HTTP看来是完全无关的,为了记录连接的状态,所以引入了Cookie和Session机制;

  4)HTTP在传输层使用的是TCP协议,所以它可以保证信息传输的可靠性。

  Thrift:thrift主要用于各个服务之间的跨语言远程通信,thrift通过IDL(Interface Description Language)来关联客户端和服务端。thrift主要支持以下几种服务模型,TSimpleServer: 简单的单线程服务模型,常用于测试;

  TThreadPoolServer: 多线程服务模型,使用标准的阻塞式IO;TNonBlockingServer: 多线程服务模型,使用非阻塞式IO(需要使用TFramedTransport数据传输方式); THsHaServer: THsHa引入了线程池去处理,其模型读写任务放到线程池去处理,Half-sync/Half-async处理模式,Half-async是在处理IO事件上(accept/read/write io),Half-sync用于handler对rpc的同步处理。

  Dubbo:Dubbo是Alibaba开源的分布式服务框架,致力于提供高性能和透明化的 RPC 远程服务调用方案,以及 SOA 服务治理方案。其本质就是一个RPC分布式框架。

  4、API测试常用工具

  用于API测试的一些工具如下:

  Eolink: https://www.eolink.com/

  Curl

  httpie

  https://pypi.org/project/thrift/

  Postman

  Katalon Studio

  SoapUI

  Assertible

  Tricentis Tosca

  Apigee

  JMeter

  Rest Console

  RoboHydra Server

  SOAP Sonar

  5、 自动化测试

  测开工程师的职责除了业务质量保证之外,对提效的要求也非常高,一般通过自动化测试提高测试效率,Eolink平台提供了比较成熟的自动化测试工具。在Eolink(https://www.eolink.com/)平台编排自动化用例构建测试计划后,可发起自动化测试,用户可以根据自己的需求灵活编排冒烟测试计划或者回归测试计划,示例如下:

  创建自动化测试项目

  在API 自动化测试平台中,所有的测试用例都是以项目维度来进行管理,一个自动化测试项目可以从多个API文档项目中引用API信息来创建API测试用例。

  进入项目 项目列表页,点击新建自动化测试按钮:

1-1.png

  在弹窗中输入相应的信息,点击确定即可:

1-2.png

  创建自动化测试用例

  进入用例管理页面,点击 添加用例 按钮,在弹窗中输入测试用例的名称,然后点击确定:

1-3.png

  创建定时测试任务

  API自动化测试可以设置定时任务,实现项目在无人值守的情况下自动测试并且发送报告给相应的邮箱,监控项目监控情况。

  进入定时任务页面,点击 新建定时任务 按钮:

1-4.png

  在新页面中设置定时任务的周期:

1-5.png

  点击添加用例按钮,设置需要定时执行的测试用例:

1-6.png

  设置通知邮件的发送地址,然后点击 保存 按钮即可创建一个定时测试任务:

1-7.png

  查看定时测试历史

  在定时任务页面,点击相应定时任务的 【历史】 按钮:

1-9.png

  在弹窗中可以看到历史的测试报告,您可以将报告导出为文件:


作者:小Kit    

来源:http://www.51testing.com/html/02/n-7796402.html

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   根据美国商标和专利局(USPTO)公示的清单,苹果近期获得了一项关于 AirPods 耳机的最新专利,其亮点在于传统触控操作之外,还支持隔空手势操作。  在此嵌入专利设计草图,其中图 4A 展示了一位佩戴 AirPods 耳机的用户;图 4B 展示了 AirPods 的横截面视图;图 5 展示了隔空手势,实现不同操作和功能。  图 6A 和 6B 展示了 AirPods 的触控区域,而图 9 展示了在 AirPods 上配有按钮;图 10 展示了 AirPods 配有拨盘控件。作者:cnBeta原文链接:今日头条(toutiao.com)
            0 0 868
            分享
          •   1.概述  在使用Jmeter做性能测试过程中,可能会应为默认设置的堆内存值较小出现堆内存溢出问题,此时解决的方式有两种,分布式测试和调大堆内存。下面介绍官方推荐调整堆内存方法。  2.调整Jmeter堆内存  2.1.介绍官方推荐堆内存调整方法(jmeter在windows环境运行配置方式)  了解Jmeter最便捷的方式就是看官方文档,它提供了全方位的Jmeter介绍。如果没有阅读官方文档的习惯可能会走一些弯路,因此推荐一条好走的路。  官方文档地址:https://jmeter.apache.org/usermanual/get-started.html  1.Jmeter使用手册展...
            0 0 1224
            分享
          • 良好的过程产生良好的结果,做好管理,就要管理好整个过程,但是过程管理不仅仅感性,即使通过定性的管理也不够,需要更好的量化管理,正如软件过程成熟度模型TMMI把量化管理放在很高的水平。用数字来反映问题或者成绩,都是比较及时,客观,明确;通过量化管理,才能持续推进测试过程,产品质量等改进。需要测试管理在先,测试活动在后,即先有一套流程、过程跟踪方法等,然后开展测试活动,主动收集数据、分析数据,进行量化管理,不断改进测试流程。测试管理的全局性,指的是不忽视任何一个环节,不轻视任何一个细节。从产品需求文档审查开始到产品发布,基于度量数据的可视化,实施对测试全过程的跟踪和管理,它所涉及的内容非常广泛,其...
            0 0 1600
            分享
          • “新冷战”蔓延到生产力工具著名 UI 设计软件 Figma 宣布制裁大疆!近日,网上流传一份 Figma 发送给大疆的内部邮件。其中写道:“我们了解到,大疆在美国制裁名单中被点名。因此根据美国法律,Figma 无法再为您提供对我们软件的访问权限,我们已经开始冻结您的 Figma 账户。我们将在未来两周内通过电子邮件或其他方式将您的文件提供给您。此外,我们不会删除您的文件。如果大疆最终从受制裁方列表中删除,您的访问权限可能会恢复。”好在,在 Figma 封号的消息传出后,国内包括蓝湖 MasterGo 等被称为“中国 Figma ”的设计工具团队宣布,可以进行 Figma 文件导入,并且支持导入...
            14 13 2041
            分享
          • webdriver概述是一个非常好用的用来进行复杂重复的web自动化测试的工具,主要是,它可以用于我们进行爬虫。WebDriver(Selenium 2),它的主要新功能是集成了 Selenium 1.0 以及 WebDriver。WebDriver(Selenium 2) 兼容 Selenium,它既支持 Selenium API 也支持 WebDriver API。安装chrome webdriver(这是谷歌浏览器的webdriver安装),安装webdriver必须要和对应浏览器的版本相匹配才可以使用。安装之前,先查看浏览器的版本,我这里用谷歌浏览器。1. 查看自己的chrome谷歌浏...
            12 12 2933
            分享
      • 51testing软件测试圈微信