Testing 有时使用testcafé登录失败;

Testing 有时使用testcafé登录失败;,testing,azure-devops,automated-tests,azure-pipelines,testcafe,Testing,Azure Devops,Automated Tests,Azure Pipelines,Testcafe,我正在用testcafe进行软件测试,一个月以来,我一直面临一个问题,当我运行测试时,它点击登录按钮,有时通过,有时不通过,这导致测试失败。它抛出了一个错误 错误详细信息: 无法在执行对资源的请求 “mysite.com” 因为一个错误。 请求标头的大小为10242字节,超出了设置的限制。 它会在解析此标头时导致内部Node.js错误。 要解决此问题,需要将“--max http header size=…”标志添加到“NODE_OPTIONS”环境变量: macOS, Linux (bas

我正在用testcafe进行软件测试,一个月以来,我一直面临一个问题,当我运行测试时,它点击登录按钮,有时通过,有时不通过,这导致测试失败。它抛出了一个错误

错误详细信息: 无法在执行对资源的请求

“mysite.com” 因为一个错误。 请求标头的大小为10242字节,超出了设置的限制。 它会在解析此标头时导致内部Node.js错误。 要解决此问题,需要将“--max http header size=…”标志添加到“NODE_OPTIONS”环境变量:

  macOS, Linux (bash, zsh)
  export NODE_OPTIONS='--max-http-header-size=20000'

  Windows (powershell)
  $env:NODE_OPTIONS='--max-http-header-size=20000'

  Windows (cmd)
  set NODE_OPTIONS='--max-http-header-size=20000'

  and then start your tests.
当我在本地和Azure管道中运行测试时,就会发生这种情况。 我尝试在本地使用--max http header size=20000并在管道中使用maxHttpHeaderSize,但没有任何帮助


有人能帮忙吗?

在这种情况下,似乎有两个错误在起作用

第一名: 错误消息中有错误。Windows命令(cmd)应如下所示:
set NODE_OPTIONS=“--max http header size=20000”
(带双引号)

秒:
有一个已知的标题大小。如果报头大于~65 KB,则将其拆分为多个数据包。现在,testcafe在计算推荐的报头大小时只考虑最后一个数据包。要运行测试,您需要找到一个合适的大于80 KB的最大标头大小,因为它是TestCafe的
maxHeaderSize

注意;我还尝试在任务组中添加一个cmd任务,并设置:set NODE_OPTIONS='--max http header size=20000',但没有帮助,您可以尝试创建一个管道变量
NODE\u OPTIONS
,并将其值设置为
--max http header size=20000
。请您向我解释一下如何消除此错误?我向任务组添加了maxHeaderSize命令,如您所见。这并没有改变什么。运行({skipJsErrors:true,QuarantionMode:true,SkipUncAuthors:true,maxHeaderSize:640000,pageLoadTimeout:30000,selectorTimeout:30000,assertionTimeout:30000});没有用于的
maxHeaderSize
选项。要指定最大标头大小,需要在运行TestCafe之前设置
NODE_OPTIONS
环境变量。下面是如何在Windows cmd中本地执行此操作:
set NODE_OPTIONS=“--max http header size=640000”&testcafe chrome./test.js
要在Azure管道中运行测试,您需要定义
NODE_OPTIONS=“--max http header size=640000”
环境变量,如中所述。我如何知道640000是正确的值?我只是随机设置的,只是一个大数字