新手Gatling Scala问题:我正在使用George Leung的gatling-grpc库(它以超文本传输协议库为模型)并尝试将会话中的值(在进纸器中生成)传递到非DSL、非Gatling方法调用中,特别是调用填充gRPC有效负载对象。
在开始之前,让我补充一点,我似乎无法使用exec
的sessionFunction(Expression[t]
)形式来解决我的问题:
.exec{ session => { … grpc(…).rpc(…)… }}
…因为,AFAICT,grpc
调用必须是块中的最后一个内容,否则它永远不会被计算。。。然而,它不可能是块中的最后一件事,因为无法强制它返回会话对象(同样是AFAICT)。
因此,我必须使用ActionBuilder
形式的exec
(grpc(…)
返回一个调用
,因此这是设计的):
.exec( grpc(…).rpc(…)... )
这是有效的…直到我有一个gRPC有效载荷(即非Gatling)方法调用,我需要向它传递一个非常量值(来自馈线)。
在这种情况下,我无法访问会话
对象,并且不应用Gatling表达式语言,因为定义我需要使用(生成有效负载)的gRPC类型的库不知道Gatling。
在这个片段中:
.header(transactionIdHeader)("${tid}.SAVE")
.payload(Student.newBuilder()
.setId(GlobalId.newBuilder().setValue("${authid}_${uniqId}").build()).build())
)
…第一个调用求值${tid}
,因为第二个参数是表达式[T]
,因此作为表达式语言求值,但第二个调用无法求值${authid}
或${uniqId}
,因为定义gRPC类型GlobalId的外部生成库不知道Gatling。
所以
您需要Gatling JavaPB集成。
要看到这一点,请看这里。
。payload
方法采用表达式[T]
,它是会话的别名=
你的挫败感很大程度上是不知道如何掌握一个
会话
。我希望这能消除困惑。
在最坏的情况下,可以编写lambda来创建表达式。但是对于字符串插值或访问单个对象,Gatling提供了一个隐式对话,将EL
字符串
转换为表达式
。
问题是你想要构造类型良好的有效载荷,而盖特林的EL对此无能为力。建设者的设置者想要一个
T
,但您只有一个表达式[T]
(可以从EL或$
函数中选择)。创建上述库是为了处理该管道。
导入
com之后。github。钓鱼者。加特林。javapb_
,您应该编写以下内容。
...
.payload(
Student.getDefaultInstance
.update(_.getIdBuilder.setValue)("${authid}_${uniqId}")
)
为了完整起见,请参阅Gatling文档中的警告,了解为什么在
中定义操作。exec(sessionFunction)
不起作用。
我有多个Gatling模拟,我正试图以一种重用低级调用(即HTTP调用)的方式构建它们,同时构建不同的场景。因此,我有以下结构(为了解释当前状态,使用了echo函数): 在上面提供的测试模拟中,我们从文件中提供数据并选择我们作为Map存储到会话中的属性子集。如果在文件中找到此类属性,我们会在提交回显请求时将它们添加为表单参数。否则我们不会。在这两种情况下,我们都存储了响应正文并将其打印出来。这很好
我们正在改变数据库,从一个支持8位int的数据库到一个不支持8位int的数据库。当Liquibase创建一个DB导致jOOQ生成“短”变量时,我们的代码会中断,但我们的代码使用字节/字节-这会中断代码签名。 有人建议我们继续使用以前的数据库(HSQLDB)来生成代码,而不是重新编码,它“应该”与新数据库一起运行。有不同的意见,除了直觉,我找不到任何决定性的东西,这似乎与jOOQ的设计目的背道而驰。
问题内容: 我可以将值从一页传递到另一页,但我需要像这样传递值, 第1页: Page4.php Page3.php 我需要将Page1.php的文本字段中的值传递给Page2.php中的文本字段,因为表单不是直接重定向到Page2,所以我无法传递该值,我尝试了会话,表单发布方法和其他几种方法,但我尚未成功。 如果您可以帮助我提供代码或一些建议,我将非常高兴。 谢谢! 编辑.......... 我找
我正在开发一个带有原生代码的Android库。此库项目将作为库添加到应用程序项目中。 我想在应用程序项目使用它时调试库。 我很确定库中的设置(makefile,构建命令,编译器选项)是可以的,因为我从库中尝试了调试器(我创建了一个虚拟活动并取消设置“库”),它的工作原理。我也意识到由于加载动态库所需的时间而可能发生的延迟,并且出于同样的原因,我认为这不是问题所在。 在应用程序项目中,我刚刚添加了本
我正在尝试使用https://github.com/pseudomuto/protoc-gen-doc,我无法找到在消息中排除grpc服务/字段的一些API的方法。 在swagger中找到了相关的样式,但似乎找不到将其添加到Pro buf文件中的方法http://watson-developer-cloud.github.io/api-guidelines/swagger-coding-style
我是Android 我试图创建一个应用程序,它使用ssh连接连接到Beaglebone Black,然后通过发出来自Android设备的命令来控制连接到BBB的一些外围设备。我打开(成功)一个ssh会话在AsyncWork中,而用户看到一个闪屏,如果连接成功,用户将得到一个确认,然后将能够发送预定义的命令通过点击一些可用的按钮。 接下来我要做的是让会话保持打开状态,然后每次我希望发出命令并等待BB