通过Jmeter输入的数据未反映在应用程序的UI中

通过Jmeter输入的数据未反映在应用程序的UI中,jmeter,performance-testing,moodle,Jmeter,Performance Testing,Moodle,我正在使用Jmeter对Moodle应用程序执行负载测试 我按照以下步骤复制了一个简单的addcompany测试场景 1:通过HTTP测试脚本记录器记录浏览器操作,并创建线程用户为1的测试计划 2:添加了HTTP缓存管理器,添加了正则表达式提取器,用于检索登录HTTP请求的动态生成会话 对于添加新公司的Http请求,添加了包含新公司名称的用户参数 我运行了测试,在查看结果树-响应部分响应代码:200,响应消息:ok,所有必需的变量都在HTTP POST中传递 问题:通过Jmeter测试添加的新公

我正在使用Jmeter对Moodle应用程序执行负载测试

我按照以下步骤复制了一个简单的addcompany测试场景

1:通过HTTP测试脚本记录器记录浏览器操作,并创建线程用户为1的测试计划

2:添加了HTTP缓存管理器,添加了正则表达式提取器,用于检索登录HTTP请求的动态生成会话

对于添加新公司的Http请求,添加了包含新公司名称的用户参数

我运行了测试,在查看结果树-响应部分响应代码:200,响应消息:ok,所有必需的变量都在HTTP POST中传递

问题:通过Jmeter测试添加的新公司并没有反映在moodle操作的UI中 你们谁能告诉我一声吗 是否有我可能遗漏的东西,或者我可以调试问题


注:我是Jmeter的新手,我四处查看了很多通过Jmeter输入的数据,这些数据没有显示在web应用程序的UI中,我无法找到有用的结果。

我认为您无法使用Jmeter进行测试。试着用JUnit测试用例来代替

这类问题的答案几乎总是,除了您捕获的会话ID之外,您还遗漏了一些必要的动态值

HTTP200响应仅仅意味着服务器返回了良好的响应。它还可能包含一条错误消息


我将检查返回响应的实际html正文是否有任何错误。在服务器端检查日志可以为您提供某些时候出错的线索。您还应该尝试添加cookie管理器。

在GUI模式下,在启用侦听器的情况下使用1个虚拟用户运行测试,并检查响应以查看脚本失败的位置。我的期望是你根本无法登录


请参阅该文件以供参考,它用于获取会话密钥和课程id。

请支持您的说法,即这不能在JMeter中完成。这听起来像是纯粹的HTTP调用,这是JMeter的主要用例。此外,OP表示他们正在尝试执行负载测试。JUnit比JMeter更合适吗?谢谢你的回复。事实上,我已经添加了Cookie manager,不必客气。但我通过正则表达式提取器提取的会话id只有在我选中Use multipart/form data for POST of HTTP请求时才被传递,即使不需要文件附件。这会以任何方式影响数据更新吗?你是对的,我以为我正在传递会话变量,但它没有被传递。我使用regex提取器提取会话id并将其作为${session}传递,但HTTP POST中未捕获此值,我的POST数据如下,请让我知道您是否可以帮助处理POST数据:id=633&action=edit&sessionID=${session}&name=1234567&submitbutton=submitnote-我的regex工作正常,我用regex调试程序检查了regex是否在参数中正确存储了会话id?或者它正确地存储了它,但您无法正确地调用该值?您能展示一下您的正则表达式提取器,以及如何使用会话吗?您的测试计划中的屏幕截图会很有帮助。我并没有在应该提取会话值的地方提取会话值,而是将正则表达式提取器用于正确的HTTP请求。现在很好用。谢谢