JMeter可以像Selenium那样进行自动化测试吗?

JMeter可以像Selenium那样进行自动化测试吗?,jmeter,automated-tests,Jmeter,Automated Tests,我还是JMeter的新手,我被分配到一项工作,我需要使用JMeter来执行自动化测试。其想法是使用JMeter编写脚本,并运行脚本来填写网站中的表单。我很好奇JMeter每次执行时都能使用数据库中的不同数据来填写网站表单吗?每个用户都有唯一的数据 我遵循了本教程,它成功了,但是,当我尝试将参数名称更改为与在Input模式中找到的字段名称不匹配的其他名称时,它仍然有效。所以我想知道,即使我更改了一个错误的字段名,JMeter怎么知道把参数放在哪里?您可以使用JMeter自动提交表单或下单。您还可以

我还是JMeter的新手,我被分配到一项工作,我需要使用JMeter来执行自动化测试。其想法是使用JMeter编写脚本,并运行脚本来填写网站中的表单。我很好奇JMeter每次执行时都能使用数据库中的不同数据来填写网站表单吗?每个用户都有唯一的数据


我遵循了本教程,它成功了,但是,当我尝试将参数名称更改为与在Input模式中找到的字段名称不匹配的其他名称时,它仍然有效。所以我想知道,即使我更改了一个错误的字段名,JMeter怎么知道把参数放在哪里?

您可以使用JMeter自动提交表单或下单。您还可以通过添加断言来使用JMeter进行API测试。但是JMeter的主要目的是测试应用程序的性能。它不像selenium那样在浏览器上执行操作,而JMeter以各种协议将请求发送到相关服务器,并且还可以同时模拟多个用户


如果您想进行广泛的自动化测试,JMeter并不是理想的工具。

您可以使用webdriver sampler运行带有JMeter的selenium。它需要配置采样器和浏览器配置,这些都是插件,可以使用插件管理器下载

有关更多信息:-

现在,如果没有插件,它将在协议级别工作,而不是在前面的评论中指出的前端。 所以,是的,它可以取决于你想要工作的层。它可以使用webdriver插件在前端(如selenium)上工作,并且可以将包含不同数据的表单作为直接请求提交给服务器,而无需使用前端/GUI

希望这有帮助。

请参见主页:

JMeter不是浏览器,它在协议级别工作。就web服务和远程服务而言,JMeter看起来像一个浏览器,或者更确切地说,是多个浏览器;但是JMeter并不执行浏览器支持的所有操作。特别是,JMeter不执行HTML页面中的Javascript。它也不会像浏览器那样呈现HTML页面,也不可能以HTML等形式查看响应,但任何示例中都不包含计时,一次只能在一个线程中显示一个示例

浏览器不做任何魔术,他们执行,等待响应并呈现它。反过来,JMeter可以执行相同的HTTP请求,因此通信量将是相同的,但是它不会呈现响应,而是测量时间并收集更多的指标

如果您更改输入的名称,则请求很可能会成功,也就是说,请求将低于400,因此JMeter会将结果标记为绿色,但是如果您使用listener检查响应,您将看到表单未填充和/或您仍在同一页面


如果您想使用JMeTM来检查应用程序返回的数据,那么您可以使用测试来测试预期值的存在、错误的缺失、设置响应时间阈值等。

< P>这取决于您试图自动化的内容。如果您计划在有一些先决条件(如从浏览器中获取令牌、cookie、会话ID)的情况下自动化API调用,那么JMeter可能可以用于使用BeanShell脚本和其他插件利用现有JMeter功能的情况

但如果您计划拥有一个全面的UI自动化框架,那么JMeter可能不是一个理想的选择