首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

gRPC三种Java客户端性能测试实践

我之前分享了Java和Go语言版本的gRPC接口的服务端和客户端的开发,使用的基本都是基础的原声API,旧文如下: Grpc服务开发和接口测试初探【Java】 2022-04-20 gRPC服务开发和接口测试初探...【Go】 2022-05-07 gRPC三种客户端类型实践【Java版】 2022-05-11 经过一段时间的摸索和尝试,我觉得又可以了,今天给大家分享一下三种Java客户端的性能测试实践,其中主要是com.funtester.fungrpc.HelloServiceGrpc...因为在实际的业务测试中这个用的最多,还有阻塞的客户端对于性能测试的指标统计和监控比较友好,对于多接口串联的业务测试来说更贴近HTTP接口的测试,这样能让很多用例思路直接复用。...PS:本篇文章只做性能测试实践,不会测试各类状况下极限性能,所以硬件配置和软件参数就不单独分享了。 服务端 依旧采用了之前的fun_grpc项目的SDK内容。...; import io.grpc.ServerBuilder; import java.io.IOException; import java.util.concurrent.ThreadPoolExecutor

67620

Grpc — 整体性能测试

当然最最最重要的就是性能,在使用RPC的场景下对于多个程序通讯完成业务所消耗的性能是有巨大挑战的,笔者也做了一套完整的性能测试大家可以继续往下看。...附上: 喵了个咪的博客:w-blog.cn 博文实例demo:GitHub - sunmi-OS/grpc-php-to-golang-demo grpc官网:grpc / grpc.io protobuf...Releases · protocolbuffers/protobuf · GitHub 一,服务器配置 E5 - 2680V2 * 4 8G ddr3 1600Mhz ab工具压测 分别对以下两种场景进行测试...6.8K 更具整体结果得到以下结论: 对于GO与GO之前通讯Grpc远远优于http协议 PHP调用GO提供的服务,都有很大的开销,http整体资源消耗和并发能力优于GrpcGrpc依赖太重导致了PHP...引入文件很慢,PHP更时候HTTP调用方式 PS:那么有没有什么方式只需要开发一次就能都支持HTTP和Grpc,PHP调用http,Go调用Grpc,因此就有了后面的Grpc-gateway的内容了

2.9K40

GRPC接口测试全通攻略

在这个工具的基础上,又提供了各个编程语言的插件,官方目前支持: - C++ - Golang - Dart - Java - Kotlin - Python - Ruby - C# - Objective-C...= nil { panic(err) } fmt.Println(string(r)) } 4、如何进行gRPC接口测试 对于gRPC接口,如果能理解上上一章的内容,那么就没有什么神秘可言了...目前,没有什么特别方便的工具,可以直接进行gRPC接口测试,Postman目前也是不支持gRPC接口,所以只能使用自己擅长的编程语言,来进行gRPC接口功能测试。...引入google的grpc库,实现gRPC客户端连接。 4. 同HTTP接口测试一样,设计对应的测试用例。 5. 使用代码实现接口测试用例。...5、如何进行gPRC接口性能测试 推荐使用JMeter的gRPC插件(https://github.com/zalopay-oss/jmeter-grpc-request/releases),下载最新版后

2.7K40

用Python进行gRPC接口测试

gRPC推出以来,已经广泛应用于各种服务之中。在测试中,我们也越来越多地遇到gRPC接口相关的测试内容。...测试一个gRPC接口,我们往往需要一个测试用的客户端,本文就为大家介绍如何用python来实现一个简易的gRPC客户端程序。..._grpc 同时再引入必要的grpc模块: import grpc 接下来就是调用模块中的方法来进行grpc接口的连接、测试了。...进一步,如果需要对接口进行并发下的稳定性测试,可以将客户端编译成可执行程序或利用shell脚本,再结合jmeter等自动化测试工具进行测试,以编译可执行程序的方法为例: 首先利用pyinstaller...小结 本文介绍了用python实现gRPC接口测试的方法,可以快速地制作一个简易客户端应用于gRPC接口相关的测试,有一定实用价值。

6.9K21

grpc python 和Java实现

/grpc/grpc-java,添加对应的jar包和插件,我的测试是在idea下maven工程下进行的,只需在pom文件中,添加对应的依赖和插件即可。...二、编写对应的客户端(java)和服务端(Python) 1、首先编写proto文件,由于是测试,proto文件如下: ?...Python服务端和客户端测试,首先启动服务端,然后启动客户端: ?...具体java客户端的实现: ? Java服务端和客户端测试,首先启动服务端,再启动客户端,然后运行DefinedClient.java的main函数,可以看到下面的输出就表示成功! ?...三、跨语言的测试: 第一种情况:Java客户端,Python服务端,启动上述对应的代码模块(先启动服务,然后运行客户端): 可以看到也

1.3K20

用Python进行gRPC接口测试(二)

各位被困在家中的小伙伴们,大家新年好~今天将继续为大家带来用Python进行gRPC接口测试的续集,上次主要讲了一下前期准备工作和简单RPC通信方式的实现,这次我们将着眼于另一类gRPC...上期回顾:用Python进行gRPC接口测试 一、流式RPC的三种具体形式 流式RPC不同于简单RPC只有“单发单收“一种形式,而是可以分为三种不同的形式——“应答流式RPC”,“请求流式RPC...java_package = "io.grpc.examples.routeguide"; option java_outer_classname = "RouteGuideProto"; option...进一步,如果需要对接口进行并发下的稳定性测试,依然可以将客户端编译成可执行程序或利用shell脚本,再结合jmeter等自动化测试工具进行测试,以编译可执行程序的方法为例: 首先利用pyinstaller...小结 本文介绍了用python实现其他三种形式gRPC接口测试的方法,这样四种形式的gRPC接口我们就都可以比较方便地进行测试了,对于今后需要测试gRPC接口的同学可以提供一些借鉴,当然有更好地方法欢迎大家一起讨论交流

2.3K10

用Python进行gRPC接口测试(三)

在近期的测试中,小编又遇到了一些关于grpc接口的测试,踩了一些坑,也总结了一些经验,想与大家分享交流一下。本期我们主要来谈谈有关protobuf中一些特殊数据类型在python中的处理方式。...这其中有几个较为常用的类型,在小编进行的测试中经常遇到,下面我们就结合实际中的例子来为大家介绍一下。...其实正如message的名字一样——消息,它是protobuf中的核心类型,在grpc接口中,我们正是通过发送和接收消息来完成数据交互,来实现对应的功能。...在收到返回结果之后,可以使用MessageToJson方法将message转换成json,这样对于我们测试人员来说,发送和接收的数据看起来都是json,无论是准备测试数据还检验结果都会轻松不少。...结合前面两篇所介绍的四种gRPC接口测试请求方法,我们就可以构造各种类型的数据、对各种不同的gRPC接口进行测试了。好了,本期就到这里,我们下期再见~

1.5K30

软件测试登录测试详解

一、功能测试登录 功能性测试用例包括: 1.什么都不输入,点击提交按钮,看提示信息。...二、接口测试登录 这里使用的登录接口是自己通过python写的 1.png 针对于接口测试可以使用工具或者自己编写脚本进行接口测试。...,这里使用的是python+requests,如图: 3.png 三、性能测试登录 针对于接口测试的性能测试我们可以使用jmeter,jmeter是java开发的一款轻量级的性能测试工具。...在做登录的性能测试的时候,需要考虑验证码的问题,要么去除验证码,要么设置一个万能验证码,这里还是用上面那个登录接口,进行性能测试。...这里条件限制就用一个接口进行登录的并发测试。 5.png 6.png 查看并发的结果: 7.png 8.png

1.4K40

登录测试用例

登录测试用例 目录 1、用户名、密码、验证码 2、记住密码 3、忘记密码/找回密码 1、用户名、密码、验证码 1、功能 (1)都正确 (2)至少有一个不正确 (3)至少有一个为空 (4)中英文、...特殊字符、空格、长度限制 - 一般情况下,登录账户和密码不允许输入中文 (5)用户名和密码是否大小写敏感 (6)密码是否加密 - 是否有明暗切换 (7)输入栏是否设置快速删除按钮 (8)成功登录退出后,...点击浏览器回退按钮,是否可以继续操作系统 (9)操作错误提示信息是否简单明了 2、性能 (1)长时间大量用户连续登录和退出,服务器是否存在内存泄漏 (2)高并发场景下用户登录的响应时间是否符合要求 (3...)高并发场景下服务端的监控指标是否符合预期 (4)密码输入框内输入的密码是否都可以在页面源码模式下被查看 (5)连续多次登录失败的情况下,系统是否会阻止后续的尝试以应对暴力破解 (6)同一用户在同一终端的多种浏览器上登录...,验证登录功能的互斥性是否符合与其设计 (7)是否可以使用抓包工具抓到的请求包直接登录 3、UI (1)布局是否合理,输入框、按钮是否对齐 (2)界面的设计风格是否与UI的设计风格一致 (3)界面的文字是否简洁易懂

77740

gRPC服务开发和接口测试初探【Go】

之前写过了Grpc服务开发和接口测试初探【Java】,中间耽搁了一些时间,Go版本的gRPC测试开发实践才有时间学习使用。其中也是由于自己Go语言不够熟悉导致的。...前置 回归正题,Go语言版本的gRPC实践相对Java来说是比较简单的,但是总体的工具链是比较复杂的,可能是因为Go生态目前相比Java还是比较匮乏吧。...我没有整理出一个亲自实践之后的可行的教程,原因有二: 我这可行的,肯定不是放之四海皆准 解决问题也是学习提升的一部分,不能越俎代庖 proto Go语言的gRPC的proto编写跟Java大致一致,只有一个报名的参数不太一样...编码 这里Go语言gRPC的一点优势,就是在一个项目中即可实现,Java需要先弄一个SDK这样。Go语言的gRPC的代码可以通过生成代码命令中的参数实现指定路径。...测试开发实践已经完事儿,大概率上我不会在工作中使用Go作为主力gRPC测试语言,后面测试实践内容还是会以Java为主。

56110

单点登录性能测试方案

之前有的统一登录方式被废弃,由于单点登录比较之前的登录系统复杂很多。之前的方案请求一个接口即可获得用户校验令牌。 先分享一下单点登录的技术方案的时序图: ?...单点登录时序图 性能测试分成了两个场景: 性能压测场景分析: 跳过不必要的302响应状态请求,只测试业务逻辑相关接口,不处理页面相关接口(资源文件等),登录完成请求额外接口完成登录验证。...对应的ST2令牌 第六步:请求svr2服务校验校验ST2令牌,获取admin_jsessionid信息 第七步:请求额外接口完成svr2登录状态校验 针对这两个场景,测试脚本如下: import com.fun.base.constaint.ThreadBase...因为之前性能测试方案都是使用jmeter作为解决方案,这次架构变更的测试用例难以实现,故才用了脚本。...性能框架才用了之前发过的性能测试框架有兴趣的可以点击查看一下,语言以Java为主,脚本使用Groovy写的。

1.5K10
领券