api测试工具有哪些(测试工具有哪些?)

      最后更新:2023-05-15 12:50

      测试工程师面试,接口测试问题总结

      1、什么是接口? 2、什么是接口测试?3、接口组成的要素有哪些?4、Python 的 requests 包是干什么的?5、如何使用 Python 的 requests 包?6、为什么开展接口测试?7、为什么要写接口测试用例?8、接口测试用例设计主要考虑哪些?9、接口测试用例包含哪些内容?10、接口测试如何设计用例?11、通用接口用例设计?12、接口测试报告包含哪些内容?13、测试指标范围包含哪些?14、做接口测试运用过哪些测试工具?15、抓包工具用过哪些?16、为什么进行抓包测试?17、TCP/IP 参考模型有哪几层?18、常用协议的端口号?19、常见的状态码有哪些?20、你们公司的接口测试流程是怎样的?21、请详细阐述接口测试和 UI 测试在测试活动中是如何协同测试的?22、接口测试注意事项?23、接口测试执行中对比数据库吗?24、请简述一下 cookie、session 以及 token 的区别?25、谈谈你对 HTTP 协议的了解?26、你对 http 请求跟 webservice 请求的了解?27、在接口测试中关联是什么含义?如何使用 Postman 设置关联?28、接口自动化测试框架一般分为几层?29、测试框架里如何做到数据和代码分离?1、什么是接口?接口就是 API,意思是应用程序编程接口。接口本质上是程序开发的函数和方法,提供参数和返回值。2、什么是接口测试?接口测试是测试系统组件间接口的一种测试,接口测试主要用于检测外部系统和内部系统之间以及各个子系统之间的交互点。测试的重点是检查数据的交换、传递和控制管理的过程,以及系统间的相互逻辑依赖关系等。3、接口组成的要素有哪些?接口访问的地址、请求的方法、参数、返回值(1)接口访问的地址 协议://IP 地址或域名:端口号/应用名/功能名(2)请求的方法 get、post 等(3)参数 用户使用接口时,需要向接口提供的数据。(4)返回值 接口给用户的反馈结果。4、Python 的 requests 包是干什么的?requests 是一个 HTTP 库,作用是发送 HTTP 请求,获得响应,往往使用在网络爬虫,接口自动化测试中。5、如何使用 Python 的 requests 包?(1)安装 Python(2)安装 requests 模块(3)创建.py 文件(4)导入 requests 模块(5)编写 Python 代码(6)调用 requests 方法6、为什么开展接口测试?接口测试属于集成测试、测试接入越早,就越能在项目早期发现问题,修复问题成本降低。接口测试非常快速,UI 自动化执行一个测试用例 10s 左右,接口用例执行一般毫秒级。7、为什么要写接口测试用例?(1)理清思路,避免漏测和重复测试。(2)提高测试效率、跟进测试进度、告诉领导做过、跟进重复性工作。(3)更好的记录问题、发现问题、复现问题、同时这也是接口测试流程中的一个产物。8、接口测试用例设计主要考虑哪些?(1)功能是否正常。(2)功能是否按照接口文档实现、是否依赖业务、异常情况(参数异常、数据异常)、安全测试等。9、接口测试用例包含哪些内容?用例名称、接口地址、请求方式、前置条件、描述、请求头部、请求参数、状态码、预期返回结果10、接口测试如何设计用例?接口测试一般考虑入参形式的变化和接口的业务逻辑。一般设计接口测试用例采用等价类、边界值、场景法居多。接口测试用例设计思路:(1)接口业务逻辑测试,接口逻辑测试是指根据业务逻辑,输入参数,输出值的描述,对正常输入情况下所得输出值是否正确的测试,也就是测试对外提供的接口服务是否正常。(2)模块接口测试,模块接口测试是为了保证数据的安全及程序在异常情况下的逻辑正确性而进行的测试模块,接口测试主要包括以下几个方面a.鉴权码 token 异常(为空、没有、错误、过期)b.其他参数的异常,必填项的检查,参数的长度、类型、格式异常。常规的参数有数字,字符串,日期;参数长度,位数、身份证、电话的长度;参数的类型,数字精度,字母,中文,带空格的参数,特殊字符;日期格式,日期年月日,年月日时分秒,日期格式(包含/-:等)c.错误码异常覆盖11、通用接口用例设计?(1)通过性验证:首先肯定要保证这个接口功能是好使的,也就是正常的通过性测试,按照接口文档上的参数,正常传入,是否可以返回正确的结果。(2)参数组合:现在有一个操作商品的接口,有个字段 type,传 1 的时候代表修改商品,商品 id、商品名称、价格有一个是必传的,type 传 2 的时候是删除商品,商品 id 是必传的,这样就要测参数组合了,type 传 1 的时候,只传商品名称能不能修改成功,id、名称、价格都传的时候能不能修改成功。(3)接口安全:绕过验证,比如说购买了一个商品,它的价格是 300 元,那我在提交订单时候,我把这个商品的价格改成 3 元,后端有没有做验证,更狠点,我把钱改成-3,是不是我的余额还要增加?绕过身份授权,比如说修改商品信息接口,那必须得是卖家才能修改,那我传一个普通用户,能不能修改成功,我传一个其他的卖家能不能修改成功。参数是否加密,比如说我登陆的接口,用户名和密码是不是加密,如果不加密的话,别人拦截到你的请求,就能获取到你的信息了,加密规则是否容易破解。密码安全规则,密码的复杂程度校验。(4)异常验证:所谓异常验证,也就是我不按照你接口文档上的要求输入参数,来验证接口对异常情况的校验。比如说必填的参数不填,输入整数类型的,传入字符串类型,长度是 10 的,传 11,总之就是你说怎么来,我就不怎么来,其实也就这三种,必传非必传、参数类型、入参长度。12、接口测试报告包含哪些内容?系统接口概况、测试目的与范围、测试工具与资源、测试记录及结果分析(单场景接口、混合场景接口)、测试结论13、测试指标范围包含哪些?(1)被测接口接收请求和返回报文。(2)被测接口返回状态、被测接口对应业务逻辑处理、涉及数据沉淀的处理、复杂场景下多个接口串联交互。14、做接口测试运用过哪些测试工具?(1)Postman(2)JMeter(3)SoapUI(4)Python + requests(5)Java + HttpClient(6)Java + OkHttp15、抓包工具用过哪些?(1)Fiddler(2)Charles(3)Wireshark16、为什么进行抓包测试?有些时候公司没有标准的接口文档,测试人员只能抓包来获取接口信息。抓包可以迅速找到请求,通过抓包可以查看整个请求过程,以及响应过程,可以通过抓包来分辨前台还是后台 bug。通过抓包,可以查看是否有敏感信息泄露,比如用户密码和个人账号信息等数据。通过抓包进行测试,拦截请求,修改请求数据,查看对应响应结果,抓包本身就是接口测试的一部分。17、TCP/IP 参考模型有哪几层?应用层、传输层、网络层、网络接口层18、常用协议的端口号?(1)21/tcp FTP 文件传输协议(2)22/tcp SSH 安全登录、文件传送(SCP)和端口重定向(3)23/tcp Telnet 不安全的文本传送(4)25/tcp SMTP Simple Mail Transfer Protocol(E-mail)(5)69/udp TFTP Trivial File Transfer Protocol(微型文件传输协议)(6)80/tcp HTTP 超文本传送协议(WWW)(7)110/tcp POP3 Post Office Protocol(E-mail)(8)443/tcp HTTPS used for securely transferring web pages(9)3389/tcp 远程访问 5631/tcp(10)5632/udp pcanywhere 端口号(11)1433 SqlServer 服务端口号(12)1521 Oracle 服务端口号(13)3306 Mysql 服务端口号(14)8080 Tomcat 默认服务端口号19、常见的状态码有哪些?(1)1XX 信息提示,用于指定客户端相应的某些动作。(2)2XX 成功,用于表示请求成功。(3)3XX 重定向,用于移动的文件并且常被包含在定位头信息中制定的新的地址信息。(4)4XX 客户端错误,用于指出客户端的错误。(5)5XX 服务器错误,用于指出服务器的错误。20、你们公司的接口测试流程是怎样的?(1)从开发中取得接口文档,了解接口业务,主要包括接口地址、请求方式、入参、出参、返回格式等信息。(2)使用 Jmeter 进行接口测试,创建一个线程组,然后建立一个 http 请求默认值,再新建很多 http 请求,一个请求是一个用例,输入相应接口路径、访问方式、参数等,创建断言和察看结果树。(3)最后调用并执行测试用例,编写测试报告。(4)在做接口测试的时候遇到过很多问题,都是自己独立解决的,比如返回值乱码(修改 Jmeter 的配置文件为 UTF-8)。21、请详细阐述接口测试和 UI 测试在测试活动中是如何协同测试的?接口测试和 UI 测试这两块其实是有一部分是重叠的,UI 测试是通过前端写的界面来调用接口,而接口测试是直接调接口。所以排除前端的处理的逻辑和调用的正确性,在理论上接口测试是可以覆盖所有的 UI 测试。但实际过程中,如果只是在接口层覆盖所有的业务流,在 UI 上只测试前端的逻辑,最终的结果可能会是忽视很多原有的功能点,导致了 UI 测试的不充分。所以存在多人分工且时间充分的时候可以尝试接口去做业务流的全覆盖,否则不要轻易尝试。22、接口测试注意事项?(1)改变请求参数,看响应结果是否和接口文档一致。(2)查看参数是否有敏感信息(比如个人账户信息,资金信息)。(3)查看是否对关键参数进行加密处理(密码信息)。(4)所有列表页接口必须考虑排序值。(5)接口返回的图片地址能否打开,图片尺寸是否符合需求。(6)接口有翻页时,页码与页数的异常值测试。(7)当输出参数有联动性时,需要校验返回两参数的实际结果是否都符合需求每个接口入参的默认值、异常类型、非空校验。(8)入参支持多个值时,要考虑传的值的个数多的情况下,接口会不会报错。23、接口测试执行中对比数据库吗?肯定要对比,因为接口返回值的数据来源于数据库,接口对数据的操作还要进行深层次的数据库检查。24、请简述一下 cookie、session 以及 token 的区别?cookie 数据存放在客户的浏览器上、session 数据放在服务器上、token 是接口测试时鉴权码,一般情况下登陆后才可以获取到 token,然后在每次请求接口时需要带上 token 参数。cookie 不安全,别人可以分析存在本地的 cookie 并进行 cookie 欺骗,考虑到安全应当使用 session 可以将登录信息等重要信息存放为 session,其他信息可以保存在 cookie。25、谈谈你对 HTTP 协议的了解?超文本传输协议,端口为 80,是由请求和响应两部分组成的。请求是由请求头,请求行,请求正文组成;响应是由响应头、响应行、响应正文组成。面向安全的话使用 https。26、你对 http 请求跟 webservice 请求的了解?(1)http api 接口:是走 http 协议,通过路径来区分调用的方法,请求报文都是 key-value 形式的,返回报文一般都是 json 串,有 get 和 post 等方法,这也是最常用的两种请求方式。可以使用的工具有 postman、RESTClient、jmeter、loadrunner 等。(2)webservice 接口:是走 soap 协议通过 http 传输,请求报文和返回报文都是 xml 格式的,都是通过工具才能进行调用与测试。可以使用的工具有 SoapUI、jmeter、loadrunner 等。27、在接口测试中关联是什么含义?如何使用 Postman 设置关联?关联就是把上一个接口返回值的部分截取出来,作为下一个接口的参数,能让接口串联运行。在 Postman 中设置关联的步骤如下:(1)通过正则表达式提取的方式或 json 取值的方式把下一个接口需要的信息从上一个接口截取出来。(2)使用设置全局变量的代码把取出来的值保存到全局变量里。(3)在下一个接口中,使用(全局变量)代替要替换的静态值。28、接口自动化测试框架一般分为几层?自动化测试框架一般分为 5 层(配置层,脚本层,数据层,测试报告层,驱动层)接口项目工程规划大致可分为几类,首先是测试结果类,比如说叫 test_rusult,里面存放一些比如日志文件,测试报告。然后是测试用例 testcase,里面分模块存放测试用例。接下来是公共方法类,比如说叫 public,或者是 tools,里面存放一些,读取 excel 数据的方法,发送 http 请求的方法,收集 log 日志的方法,发送邮件,操作数据库等方法。还有就是配置文件类,比如说叫 config,里面存放一些指定运行部分用例的配置文件,连接数据库的配置文件。最后是写一个 run 方法,运行所有的用例。29、测试框架里如何做到数据和代码分离?第一种:写在 excel 表格里,像这种主要是读取 excel 数据有点麻烦,常用的用来读取 excel 的第三方库有 openpyxl,xlrd 等。当然读取 excel 数据最好用的还是用来做数据分析的 pandas 模块,不用写那么多 for 循环。第二种:数据存放到 yaml 文件里,一个模块或者是一个功能写一个 yaml 文件,最后写个读取 yaml 文件的公共方法就行了。yaml 格式的文件比较简单。第三种:存放在数据库里面。 第四种:数据存放在 json 文件里。
      测试工程师面试,接口测试问题总结

      应用软件的接口测试用什么工具好

      1、webService接口:是走soap协议通过http传输,请求报文和返回报文都是xml格式的,我们在测试的时候都用通过工具才能进行调用,测试。可以使用的工具有jmeter、loadrunner等; 2、http api接口:是走http协议,通过路径来区分调用的方法,请求报文都是key-value形式的,返回报文一般都是json串,有get和post等方法,这也是最常用的两种请求方式。可以使用的工具有jmeter、loadrunner等;
      应用软件的接口测试用什么工具好

      自动化测试的工具有哪些

      商业工具: 1、RFTRational Functional Tester 的基础是针对于Java、.NET的对象技术和基于 Web 应用程序的录制、回放功能。工具为测试者的活动提供的自动化的帮助,如数据驱动测试。IBM RFT是一个用于功能和回归测试的数据驱动的测试平台。它支持大范围的应用,例如.Net、Java、SAP、Flex和Ajax。RFT使用Visual Basic。Net和Java作为脚本语言。RFT有一个独特的功能,称为 Storyboard 测试,用户的动作被记录下来,并通过应用截图在 Storyboard 格式中可视化。RFT的另一个有趣特性是它与IBM Jazz应用生命周期管理系统(如IBM Rational Team Concert和Rational Quality Manager)的集成。2、kylinTOP:这是一款国产的自动化测试工具,支持WEB和APP的自动化测试,其中元素智能定位是这款自动化软件主要特点,是设计理念比较超前的测试工具,算是国内众多自动化测试工具中,做的比较突出的一款。与传统的RFT和UFT相比,的确有过人之处,算是后起之秀,使用起来,简单高效、稳定。这样描述估计也没几个人能体会到的。说白一点就是一个人可以干三个人的活,使用者只需关注业务即可。3、UFT:UFT(别名:QuickTest Professional简称QTP)是一种自动化测试工具,以VBScirpt为内嵌语言,其前身是QTP。UFT支持功能测试和回归测试自动化,可用于软件应用程序和环境的测试。UFT自动化测试的基本功能包括:创建测试、检验数据、增强测试、运行测试脚本、分析测试结果、维护测试;UFT支持两种视图,一种是Keyword View(关键字视图),另一种是Expert View(专家视图)。是一款老牌的自动化测试工具。4、SilkTest:这个也是比较相对著名的工具,不过同样还是没有了解过,对于商业的工具,因为其占地面积大,还要破解等麻烦事,最关键的是使用的公司少,所以只使用过QTP,其它的一概未了解过开源工具:1、Selenium:这个应该大多数人都知道的,现在也是大多数互联网公司在使用的测试框架;selenium仅支持web的UI级别测试,但是其优点在于:a、支持多种语言编写测试脚本,比如:java、python、ruby、perl等;同时也就意味着其后的支持类库也是很多的b、支持多浏览器,如:ie,ff,safari、chrome等c、支持多平台,如:windows、linux、MAC、android、iphone等d、支持分布式执行,一套测试用例可以同时分布到不同的测试机上执行,而且还可以进行任务细化,比如:针对liunx执行系统只分配linux下需要执行的用例此外还有录制工具支持,简单也说,web类测试基本上是首选,不过对flash的支持好像不是太好其主要分2个版本,1.X版本是以js驱动来进行自动化实现的;2.X重新开发了webdriver来代替js驱动,直接调用浏览器底层接口来完成自动化实现的前提:如果使用remote或者RC功能,需安装jre下载地址:http://seleniumhq.org/download/2、EFT【easy function testing】:这个是在.net3.0 的UIAutomatuon的基础上封装的一个dll文件,同样还封装了部分windows api以实现鼠标和键盘事件。所以这个只能叫测试类库,且仅支持windows程序,而且同样支持uiautomain所支持的WPF程序的测试。前提:安装了.net3.0使用:引入该文件,uiautomation 相关dll,VS环境下编写测试用例3、UIAutomation:这个是微软提供的UI自动化框架,当然它的初衷并不仅仅是为自动化测试而产生的,它的任务是给更多的开发或者应用去调用windows的UI控件,不过还是可以用于自动化测试的;因为之前微软就有类似的工具,而这个是重新设计的ui操作类框架,其目的是为了兼容支持windows系列操作系统的UI自动化操作【xp,vista,server2003】,还有就是天然支持WPF。当然其设计与通常的自动化工具就不一样了,比如:没有把控件支持的方法绑定在控件对象本身,没有提供专门的鼠标/键盘事件,但是却提供了特定控件对象的事件响应监听及处理方法的定制。其工作流程大概是这样的:a、先获取特定的元素对象,有多种方法。如:句柄,属性值b、获取这个元素对象的模式。模式是这个框架的设计的独具之处,成就了它的灵活性,统一性c、通过这个模式在进行具体的方法调用,属性值获取等d、监听指定对象的特定事件,一旦发生则执行指定的事件处理函数 4、Robot FrameworkRobot Framework是一个完全基于关键字测试驱动的框架,它即能够基于它的一定规则,导入你需要的测试库(例如:其集成了selenium的测试库,即可以理解为操作web控件的测试底层库),然后基于这些测试库,你能应用HTML、TXT等文档形式编写自己的关键字(这些关键字即你的库组成),之后,再编写测试用例(测试用例由测试关键字组成)进行测试。例如:一个简单的登陆测试由:登陆+输入密码+登出三个关键字组成,也可以由一个关键字登陆组成,关键字颗粒的大小可以自行定制。
      1、测试类型可以包括:白盒测试、黑盒测试(功能测试、性能测试)等。 2、不同的测试类型使用的自动化测试方法不同,白盒测试主要针对代码级的单元测试、黑盒测试主要面对功能级和系统级的验证测试。3、自动化测试,针对白盒测试,一般需要有一定的编程基础,即能够基于功能代码写测试代码,常用的单元测试方面的自动化测试工具很多,上网一搜全是。 4、自动化测试,针对功能测试,有几种情况,基于CLI、API和GUI的测试;基于CLI、API的测试,即应用脚本技术向设备模拟发送CLI命令或者API请求,以达到控制设备的效果。基于GUI功能测试,即应用传统的界面自动化测试工具(例如:RFT、QTP等)控制界面控件操作的方法,以达到模拟用户操作,这几种方式都需要你有一定的编码基础;基于CLI、API的需要你懂脚本技术(例如:tcl、python、ruby等),RFT需要你懂java或者.net、QTP需要VB等。
      推荐:VISUAL UNIT 4 使用这款工具,测试工作=填表格。是广州凯乐软件技术有限公司开发的一款C/C++单元测试工具及集成测试工具,独有的白盒用例设计器。测试工作就是填表格而已,很容易,不需要写代码。什么嵌入式测试,死循环测试等难度很高的,都只是填表格就自动测出来了。 在百度搜一下:广州凯乐软件技术有限公司,进官网就可以下载使用了。
      自动化测试的工具有哪些

      接口自动化测试工具有哪些?

      接口自动化工具有以下:1、QTP。是quicktest Professional的简称,是一种自动测试工具。使用QTP的目的是想用它来执行重复的手动测试,主要是用于回归测试和测试同一软件的新版本。因此你在测试前要考虑好如何对应用程序进行测试,例如要测试那些功能、操作步骤、输入数据和期望的输出数据等。2、WinRunner。是一种企业级的功能测试工具,用于检测应用程序是否能够达到预期的功能及正常运行。通过自动录制、检测和回放用户的应用操作,WinRunner能够有效地帮助测试人员对复杂的企业级应用的不同发布版进行测试,提高测试人员的工作效率和质量,确保跨平台的、复杂的企业级应用无故障发布及长期稳定运行。3、AdventNetQEngine。是一个应用广泛且独立于平台的自动化软件测试工具,可用于Web功能测试、web性能测试、Java应用功能测试、Java API测试、SOAP测试、回归测试和Java应用性能测试。自动化(Automation)是指机器设备、系统或过程(生产、管理过程)在没有人或较少人的直接参与下,按照人的要求,经过自动检测、信息处理、分析判断、操纵控制,实现预期的目标的过程。自动化技术广泛用于工业、农业、军事、科学研究、交通运输、商业、医疗、服务和家庭等方面。采用自动化技术不仅可以把人从繁重的体力劳动、部分脑力劳动以及恶劣、危险的工作环境中解放出来,而且能扩展人的器官功能,极大地提高劳动生产率,增强人类认识世界和改造世界的能力。
      最简单的是PostMan,这个直接可以发HTTP请求,并且验证响应,而且可以将测试用例组织成测试套件,进行一键回放运行。如果需要使用高级验证功能,最好会点JavaScript。 还有就是用Python+requests神器来编写接口自动化用例或者是用Java+httpclient库来编写接口自动化测试用例。RobotFramework + HttpLibrary 用这个需要对robot framework有个基本了解。 如果只会shell的话,可以用shell+cURL命令,就是组数据和解析数据稍微麻烦点。
      接口自动化测试工具有哪些?

      http接口测试有什么好工具

      在线HTTP POST/GET接口测试工具 - aTool在线工具 最新修改:增加https类型的url请求,目前支持http和https~。在线接口测试工具 | Introduce接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。接口测试一般以用于多系统间交互开发,或者拥有多个子系统的应用系统开发的测试。接口测试适用于为其他系统提供服务的底层框架系统和中心服务系统,主要测试这些系统对外部提供的接口,验证其正确性和稳定性。最简单的应用就是,使用Web http的方式,为APP提供数据接口,这些接口具有一定的动态性,采用传入一定的参数,接口通过参数获取不同的数据返回给使用者,参数传入的方式有GET和POST方式两种,使用浏览器可以直接模拟GET请求,但是POST请求却无能为力,只能编写脚本测试,这就导致接口测试非常麻烦。本工具提供任意接口的HTTP GET和POST测试,并且提供测试返回值,接口返回时间,并且已经对接口请求的异常状态进行获取,然后反馈给用户。 备注:接口执行时间与本网站服务器有关,仅供参考。
      个人推荐:易文档一个在线接口文档编辑工具,里边也支持多种请求方式的接口测试功能。
      wytools. cn 这个小工具站点里面就有在线http请求的功能
      http接口测试有什么好工具

      本文由 在线网速测试 整理编辑,转载请注明出处。

          热门文章

          文章分类