【问题标题】:CasperJS doesn't seem to send all my POST requestsCasperJS 似乎没有发送我所有的 POST 请求
【发布时间】:2014-07-16 15:11:07
【问题描述】:

我们正在编写一个自动化测试套件来测试我们实时网站上的表单。但似乎 - 随机 - 有时这些测试会在表单仍在工作时失败。表单使用 AJAX 提交,我使用 waitForResource-function 等待 AJAX 响应。

深入研究问题,我发现 CasperJS 正在发送 POST 请求(我通过分析 resource.requested-事件来做到这一点,但有时这会导致以下错误 (resource.error):

errorCode: 205
errorString: Unknown error

更深入地研究问题,当我查看相关网站的 apache 访问日志时,我注意到当测试成功时,POST 请求被很好地记录(如预期的那样)。但是......当我收到上述错误时,我找不到这样的条目。看起来我的请求根本没有收到服务器!尽管 CasperJS 的 resource.requested-event 明确表示已发送 POST。

有没有其他人遇到过这个问题或者可能知道这里发生了什么?甚至更好:如何解决这个问题?

【问题讨论】:

  • 有趣...slimerjs 是否会出现同样的错误(您可以将其用作 casperjs --engine=)?你在wireshark中看到了什么?它是否记录请求,但不记录响应?

标签: ajax apache testing phantomjs casperjs


【解决方案1】:

您能否使用某种网络嗅探器来真正查明请求是否正在离开 Casper/Phantom? (而且我同意 Artjom 的建议,也尝试使用 Slimer,但如果它与 Slimer 一起使用,并不一定意味着问题出在 Phantom 中。)

还有(或曾经是 - Apache 2.2 和 2.4 之间的日志记录发生变化)一种在 Apache 中获取更详细日志记录的方法,该方法应该显示服务器端崩溃。

Casper 自己生成 205 错误似乎很奇怪。它似乎更有可能是服务器端的东西。 (或者如果 Apache 前面有反向代理,那将是您的主要候选人。)

如果您使用的是 Linux,请提供几个链接以帮助您入门:

【讨论】:

    猜你喜欢
    • 2016-07-30
    • 1970-01-01
    • 2013-04-08
    • 2021-11-16
    • 2014-12-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-14
    相关资源
    最近更新 更多