将web公式化鼠标单击操作转换为curl命令

将web公式化鼠标单击操作转换为curl命令,curl,scripting,Curl,Scripting,我需要用不同的数据填充一些web公式,超过数百次,我考虑制作一个脚本并使用curl来实现这一点。我对这种语言非常陌生,但我听说可以使用web浏览器执行操作,以便将其直接转换为curl命令,您知道这是否可行吗?首先,我对webformular不太熟悉,因此这种方法可能不起作用。然而,我在过去也做过类似的事情,我将描述如何做到这一点 N.B.此方法适用于不使用https加密且不需要身份验证的基本表单。您当然可以扩展此脚本以处理更复杂的表单,但这超出了本答案的范围 此外,如果您使用它来自动执行执行PO

我需要用不同的数据填充一些web公式,超过数百次,我考虑制作一个脚本并使用curl来实现这一点。我对这种语言非常陌生,但我听说可以使用web浏览器执行操作,以便将其直接转换为curl命令,您知道这是否可行吗?

首先,我对webformular不太熟悉,因此这种方法可能不起作用。然而,我在过去也做过类似的事情,我将描述如何做到这一点

N.B.此方法适用于不使用https加密且不需要身份验证的基本表单。您当然可以扩展此脚本以处理更复杂的表单,但这超出了本答案的范围

此外,如果您使用它来自动执行执行POST请求的表单,请比仅执行GET请求的表单更加小心,因为脚本中的任何错误都可能导致发送错误数据的次数“超过百次”

  • 在Chrome中打开窗体

  • 找出表单使用的操作。右键单击Chrome中的表单>“检查元素”。您将看到下面出现一些文本。寻找类似这样的东西:

  • 在行动后记下文本。这是您在以后的步骤中需要的

  • 在表格中填写一些示例值
  • 4.启动Chrome开发者工具。(对我来说,这就是控制+换档+输入)

  • 转到Chrome工具箱中的“网络”选项卡,并密切关注它

  • 提交你的表格。现在,当您这样做时,您应该会在“网络”选项卡中看到一些活动。您需要通过提交表单来确定创建了哪个调用。这就是为什么您记得步骤2中的操作。查找路径与表单操作相同的条目

  • 找到它后,右键单击该命令并选择“复制为卷曲”。瞧,你现在有一个cURL命令可以使用了

  • 将cURL命令放入脚本中,然后将步骤3中填写的示例值更改为要自动填写的值。例如,如果cURL命令为:

    curl'[somewebsite]/[formaction]'-H'来源:[somewebsite]'-H'接受编码:gzip,deflate'-H'接受语言:en-US,en;q=0.8'-H'用户代理:Mozilla/5.0(X11;Linux x86_64)AppleWebKit/537.36(KHTML,如Gecko)Chrome/38.0.2125.111 Safari/537.36'-H'内容类型:application/x-www-form-urlencoded'-H'连接:keep-alive'-data'name=Danver&status=Awesome'-压缩

  • 不要使用标题(通过-H传递的内容),而是查找字段--data。在其中,可以使用脚本更改周围的值。具体细节将取决于您的脚本语言

  • 现在您已经完成了,只要您的表单不需要活动会话cookie来提交表单。如果是这样的话,你必须采取的方法稍微超出了这个答案的范围,但它仍然是可能的

  • 我想说Behat+Mink在这方面更有用。 看看这里,例如:

    事实上,你的动作终究会转化为curl,但你不必深入细节,你会以一种非常舒适的方式来描述它们。。。 之后,您可以自称为QA初级专家:)

    Behat文件:


    很好的教程视频:

    不是卷曲解决方案,但对我来说,使用JMeter之类的工具似乎更好