jmeter

接口测试(基础知识)

你说的曾经没有我的故事 提交于 2021-01-06 20:59:51
扫盲内容: 1.什么是接口? 2.接口都有哪些类型? 3.接口的本质是什么? 4.什么是接口测试? 5.问什么要做接口测试? 6.怎样做接口测试? 7.接口测测试点是什么? 8.接口测试都要掌握哪些知识? 9.其他相关知识? 1.什么是接口? 接口测试主要用于外部系统与系统之间以及内部各个子系统之间的交互点,定义特定的交互点,然后通过这些交互点来,通过一些特殊的规则也就是协议,来进行数据之间的交互。 2.接口都有哪些类型? 接口一般分为两种:1.程序内部的接口 2.系统对外的接口 系统对外的接口:比如你要从别的网站或服务器上获取资源或信息,别人肯定不会把数据库共享给你,他只能给你提供一个他们写好的方法来获取数据,你引用他提供的接口就能使用他写好的方法,从而达到数据共享的目的。 程序内部的接口:方法与方法之间,模块与模块之间的交互,程序内部抛出的接口,比如bbs系统,有登录模块、发帖模块等等,那你要发帖就必须先登录,那么这两个模块就得有交互,它就会抛出一个接口,供内部系统进行调用。 接口的分类:1.webservice接口 2.http api接口 webService接口是走soap协议通过http传输,请求报文和返回报文都是xml格式的,我们在测试的时候都用通过工具才能进行调用,测试。 http api接口是走http协议,通过路径来区分调用的方法,请求报文都是key

正向代理与Nginx反向代理和负载均衡

守給你的承諾、 提交于 2021-01-06 06:38:51
文章部分内容 | 圈圈的圈 链接 | juejin.im/post/5c0e6d606fb9a049f66bf246 知乎: 新一993 https://zhuanlan.zhihu.com/p/97235795 近期接触到Nginx,然后就学习记录一下。 前言 代理是个啥 既然要聊反向代理, 那首先得知道代理是个啥吧? 嗯. 正向代理 比如, 你买束花, 想要给隔壁工位的测试妹子小丽表白. 但是又怕被人家直面拒绝太没面子. 于是你把鲜花委托给平时和小丽一起的测试小伙伴小红. 让她帮忙把花送给小丽. 这就是一个简单的代理过程, 小红作为代理帮你把花送给了小丽, 当然这种情况在现实中并不推荐使用, 因为难以避免中间商赚差价 😂. 在上面的例子中, 你作为客户端(请求方), 想要向服务方(小丽)发起请求. 但是碍于面子你主动找到了第三方(小红)作为代理向服务方发送请求, 这种情况就是常说的正向代理. 正向代理在互联网中的使用主要是科学上网, 你想访问谷歌但是碍于防火墙你只能通过vpn服务器作为代理才能访问. 这个时候一般也要找值得信赖的vpn厂商, 避免中间商赚差价 😄. 反向代理 关于反向代理的例子, 那就比较多啦. 比如, 孤独的你躺在床上夜不能寐. 于是乎, 拿出手机, 点亮了屏幕, 拨通 10086, 中国移动就会随机分配一个当前处于空闲的客服MM, 你可以和客服MM聊聊天,

高德全链路压测平台TestPG的架构与实践

蓝咒 提交于 2021-01-06 02:02:39
导读 2018年十一当天,高德DAU突破一个亿,不断增长的日活带来喜悦的同时,也给支撑高德业务的技术人带来了挑战。如何保障系统的稳定性,如何保证系统能持续的为用户提供可靠的服务?是所有高德技术人面临的问题,也是需要大家一起解决的问题。 高德业务规模 支撑一亿DAU的高德服务是什么体量?可能每个人的答案都不相同,这里从基础设施的角度给大家做个简单的介绍,我们有数千个线上应用,分别部署在全国各地多个机房中的数万台机器上。 这张图是高德业务核心链路的架构,从图中可以看出高德业务具有相当高的复杂性。当然,真实系统远远要比图表示的复杂,如果用这张图来代表高德整体业务形态,无异于管中窥豹,太过于片面。 对于如此大规模,高复杂度的系统,如何保障系统的稳定性,是高德技术人长期面临和解决的问题。 保障稳定性的手段 如何保障系统稳定性是几乎所有互联网企业都需要面对的问题。通常来讲,有五种手段来从理论上保障系统的稳定性,分别是: 容量规划:根据以往业务的流量,估算出未来(通常是即将来临的大促,节假日)的流量。以整体流量为基础,估算出每个子系统需要满足的容量大小。然后根据子系统的容量来计算出需要的资源数量,对系统进行适当的扩容。计算方式可以简单的表示为如下公式: 机器数量 = 预估容量 / 单机能力 + Buffer (一定数量的冗余) 流量控制:系统需要防止流量超过设计的容量,对超出设计的流量进行限流

【软件测试教程】阿里开源Dubbo接口如何测试?

拟墨画扇 提交于 2020-12-31 12:17:28
1.Dubbo简介 Dubbo 是阿里巴巴公司开源的一个Java高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 Spring框架无缝集成,随着近几年微服务架构的兴起,因为其理念很契合微服务,在国内有着比较广泛的用户群体。 2. Dubbo特点 特点:高性能、轻量级、开源 面向接口代理的高性能RPC调用 互联网服务发展: ORM(单应用)-MVC(应用分层)-RPC(分布式服务,应用和服务分开)-SOA(面向服务,服务统一管理 3.Dubbo基础架构 节点角色说明: Provider: 暴露服务的服务提供方 (开发人员写的代码、理解为接口) Consumer: 调用远程服务的服务消费方(telnet,jemter插件) Registry: 服务注册与发现的注册中心 实现成本比较低就是zookeeper(一个分布式的,开放源码的分布式应用程序协调服务) 生活中实例:美团外卖是很多商家的注册中心 Monitor: 统计服务的调用次数和调用时间的监控中心 Container: 服务运行容器 4.Dubbo接口测试 dubbo接口测试方法: dubbo接口测试的关键在于搭建消费者,那么搭建消费者有几种方式: Telnet 、Jmeter插件、Python第三库与泛化调用 1.Telnet (打开telnet方法) Win7控制面板 程序和功能

测试效率如何提升?思路总结和多个工具推荐!

*爱你&永不变心* 提交于 2020-12-29 17:47:47
写在前面:在日常开发过程中,有人做前端开发,有人负责后端开发。接口的主要作用就是连接前后台。但是,由于前端和后端开发的速度可能不一样,尤其是后端开发好了,但前端还未开发。这种时候我们需要做接口测试吗? 在日常工作中,我们主要测试的都是功能板块,如果你想真正了解接口测试,那么这篇文章或许能给你一定帮助。 1、为什么我们要做接口测试? 首先,我们先来看看测试金字塔(接口测试是在中间部分,底层是单元测试,最顶端是界面测试)。 从三者的面积大小来看,单元测试和接口测试,才是重点,而界面测试真的是太少。这个面积,你可以理解为代码覆盖,也可以理解为测试的工作量。 在国内公司越来越重视接口测试了。之前的几年,很多测试资源都放在了界面的测试,看趋势接下来应该会逐步放在接口测试功能、性能、自动化和稳定性测试上面。 2、什么是接口测试? 这个有太多文章,就不细说了,百度或者论坛里找就好了。 3、接口的分类 在开始做接口测试之前,有必要了解一下接口的分类。这里的分类,主要是HTTP请求方法分类。下面是我们最常见的GET/POST/PUT/DELETE四种方法。工作中接口用到最多是GET和POST方法。 4、设计接口测试用例 接下来,我们就一起来聊聊进行接口测试的准备工作。有些同学很好奇,接口测试要流程干嘛?不就是拿着接口文档利用接口测试工具测试。 如果只是三五个接口,你可以这么做一个临时的接口测试

【自动化测试入门】自动化测试思维

回眸只為那壹抹淺笑 提交于 2020-12-29 12:50:20
01.自动化测试入门难? 很多人一听到自动化测试,就会心想:哇、这个人好厉害啊,我要努力学代码和他一样强。 自动化测试入门真的应该第一时间上手学代码吗? 答案是否定的。自动化入门难只是因为很多人搞错了方向! 基于本人在测试团队培训自动化的实际经历,自动化测试入门首先该了解的并不是如何写代码或者使用工具实现自动化测试脚本,而是应该首先了解自动化测试思维。 如果你入门就学python/java,那你很有可能会被立马劝退。身边无数的测试同学验证了这句话,正在看本文的你是否也有类似的经历? 自动化测试思维我将其归纳为下面这句话: 自动化测试是将人工测试的动作转化成机器模拟人工执行测试动作的技术。 作为小白的你,肯定一头雾水。下面我将基于不同的自动化测试类型,带你来深度了解下自动化测试思维 1.WEB-UI自动化测试 WEB功能测试☞测试人员使用谷歌或者火狐浏览器打开项目地址,人工操作页面+人眼检测页面变化+sql确认数据入库,测试软件的功能是否符合预期。 WEB自动化测试☞脚本或工具打开谷歌或者火狐浏览器打开项目地址,脚本操作页面+脚本检测页面变化+动态sql确认数据入库,测试软件的功能是否符合预期。 2.APP-UI自动化测试 APP功能测试☞测试人员使用手机/平板打开项目APP,人工操作页面+人眼检测页面变化+sql确认数据入库,测试软件的功能是否符合预期。 APP自动化测试

软件测试所需要掌握的技能

跟風遠走 提交于 2020-12-28 17:55:53
一、测试用例的编写 1.在测试中最重要的文档,他是测试工作的核心,是一组在测试时输入输出的标准,是软件需求的具体对照。编写测试用例,是测试人员的基本功,真正能写好的人并不多。 2.测试用例包含的内容:用例编号,用例名称,测试背景,前置条件,优先级,测试数据,测试步骤,预期结果,实际结果,备注。 3.当测试小伙伴拿到第一个需求文档的时候,进行分析,提取测试点,编写测试用例,然后叫上开发,产品以及相关人员进行用例评审。 4.编写测试用例常用的方法:等价类划分法,边界值分析法,错误推断法,流程图法等, 5.学会质疑需求,不要完全按照需求来写测试用例,要从用户角度去理解需求,看到需求之外的功能和体验。 二、http与https协议 1、http协议原理 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。----自行百度补脑 2、TCP和UDP区别 TCP和UDP是OSI模型中的运输层中的协议。TCP提供可靠的通信传输,而UDP则常被用于广播和细节控制交给应用的通信传输.。—自行百度补脑 3、get和post区别 1)Get,它用于获取信息,它只是获取、查询数据,也就是说它不会修改服务器上的数据,从这点来讲,它是数据安全的

Is it possible to use wild cards in json validation or ignore some values in json in Jmeter

前提是你 提交于 2020-12-27 05:54:44
问题 My jmeter application sends a request and expects the following json in the response. {"external-profile":{"email":"myemail@gmail.com","firstname":"fn","lastname":"ln","portfolio":{"field1":[],"field2":[],"field3":[]}}} field1 , field2 and field3 could be empty arrays or might have some value. Is there a way to check that the message has field1,2,3 but ignore the value? I tried doing this but it doesn't work - {"external-profile":{"email":"myemail@gmail.com","firstname":"fn","lastname":"ln",

Is it possible to use wild cards in json validation or ignore some values in json in Jmeter

大兔子大兔子 提交于 2020-12-27 05:53:44
问题 My jmeter application sends a request and expects the following json in the response. {"external-profile":{"email":"myemail@gmail.com","firstname":"fn","lastname":"ln","portfolio":{"field1":[],"field2":[],"field3":[]}}} field1 , field2 and field3 could be empty arrays or might have some value. Is there a way to check that the message has field1,2,3 but ignore the value? I tried doing this but it doesn't work - {"external-profile":{"email":"myemail@gmail.com","firstname":"fn","lastname":"ln",

JMeter 5.4 When open testplan Unexpected error

社会主义新天地 提交于 2020-12-26 07:25:53
问题 I create a very simple testplan: I save the testplan as MySimpleTestplan.jmx Close JMeter Start JMeter again as: double click on jmeter.bat JMeter starts I browse to MySimpleTestplan.jmx and selects it Unexpected error. Se image below: I look in log WARN o.a.j.g.a.Load: Unexpected error. java.lang.NullPointerException java.lang.NullPointerException: null at java.util.ArrayDeque.addLast(ArrayDeque.java:304) ~[?:?] at java.util.ArrayDeque.add(ArrayDeque.java:495) ~[?:?] at org.apache.jmeter.gui