就服务器而言, Gatling应该与 Web 浏览器(或 Selenium)中的用户没有区别,因此最终结果应该与您自己完成该过程完全相同。但是,编写 Gatling 脚本比编写 Selenium 脚本需要更多的工作。
出于性能原因,Gatling 的运行水平低于 Selenium。Gatling 使用从服务器发送和接收的实际数据(即发送到服务器的实际 GET 和 POST),而不是使用用户级交互(例如单击链接和填写表单)。
录音机通常会产生一个相对“愚蠢”的脚本。它记录了发送到服务器的确切数据,并且不会尝试考虑每次运行可能发生的变化。例如,您正在测试的 Web 应用程序可能具有包含会话信息的隐藏表单字段,或者链接地址可能包含唯一标识符或会话 ID。
这意味着您的脚本可能没有按照您的想法执行。
要调试脚本,首先要做的是对每个请求添加检查,以验证您是否获得了预期的响应(例如,检查当您提交调查的第 1 页时,您是否被带到2 - 检查您只希望在第 2 页找到的内容,例如特定问题)。
一旦您知道哪些请求失败,请查看随请求发送的数据,并尝试找出数据的来源。您可能会发现必须从上一页中提取的会话 ID、视图状态或类似内容。
根据文档,这将有助于启用请求和响应日志记录。
为了简化 Web 应用程序的测试,我们编写了一些辅助函数来允许以更类似于 Selenium 的方式编写测试。一旦您了解了您的应用程序在做什么,您可能会发现它也为您简化了脚本编写。但是,了解为什么您当前的脚本不能按您期望的方式工作应该是您的第一步。