使用 Codeception 提交表单时的 cookie 无效
Invalid cookie on submitting a form with Codeception
我正在尝试使用 Codeception(验收测试)测试我的项目。一切都很顺利,直到我不得不提交带有 Paypal 按钮的表格。
调试时显示
I submit form "form:nth-child(3)",
[Uri] https://www.sandbox.paypal.com/cgi-bin/webscr
[Method] POST
[Parameters] {"cmd":"_s-xclick","hosted_button_id":"BUTTONID"}
ERROR
然后去
[RuntimeException] Invalid cookie: The cookie value must not be empty
我在测试期间没有设置任何 cookie。并且不知道为什么会引发此错误。
这是我的 acceptance.suite.yml
class_name: AcceptanceTester
modules:
enabled:
- PhpBrowser:
url: http://test.mysite.com
- \Helper\Acceptance
这是我的 SubscriptionCest.php:
<?php
use \AcceptanceTester;
class SubscriptionCest
{
public function _before(AcceptanceTester $I)
{
}
public function _after(AcceptanceTester $I)
{
}
// Main function
public function run(AcceptanceTester $I)
{
$I->am("New user");
$I->wantTo("purchase a membership");
$I->amOnPage("/subscription");
$I->submitForm("form:nth-child(3)", []);
}
}
这是贝宝表格的 HTML:
<form action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="post" target="_top">
<input type="hidden" name="cmd" value="_s-xclick">
<input type="hidden" name="hosted_button_id" value="BUTTONID">
<input type="image" src="https://www.sandbox.paypal.com/en_US/i/btn/btn_subscribeCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
<img alt="" border="0" src="https://www.sandbox.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1">
</form>
为什么会出现这个错误,如何解决这个问题?
谢谢。
原来这是一个错误,现在已经修复了。版本 2.1 应该让它像魅力一样工作。有关详细信息,请查看 https://github.com/Codeception/Codeception/issues/2234
我正在尝试使用 Codeception(验收测试)测试我的项目。一切都很顺利,直到我不得不提交带有 Paypal 按钮的表格。
调试时显示
I submit form "form:nth-child(3)",
[Uri] https://www.sandbox.paypal.com/cgi-bin/webscr
[Method] POST
[Parameters] {"cmd":"_s-xclick","hosted_button_id":"BUTTONID"}
ERROR
然后去
[RuntimeException] Invalid cookie: The cookie value must not be empty
我在测试期间没有设置任何 cookie。并且不知道为什么会引发此错误。
这是我的 acceptance.suite.yml
class_name: AcceptanceTester
modules:
enabled:
- PhpBrowser:
url: http://test.mysite.com
- \Helper\Acceptance
这是我的 SubscriptionCest.php:
<?php
use \AcceptanceTester;
class SubscriptionCest
{
public function _before(AcceptanceTester $I)
{
}
public function _after(AcceptanceTester $I)
{
}
// Main function
public function run(AcceptanceTester $I)
{
$I->am("New user");
$I->wantTo("purchase a membership");
$I->amOnPage("/subscription");
$I->submitForm("form:nth-child(3)", []);
}
}
这是贝宝表格的 HTML:
<form action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="post" target="_top">
<input type="hidden" name="cmd" value="_s-xclick">
<input type="hidden" name="hosted_button_id" value="BUTTONID">
<input type="image" src="https://www.sandbox.paypal.com/en_US/i/btn/btn_subscribeCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
<img alt="" border="0" src="https://www.sandbox.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1">
</form>
为什么会出现这个错误,如何解决这个问题? 谢谢。
原来这是一个错误,现在已经修复了。版本 2.1 应该让它像魅力一样工作。有关详细信息,请查看 https://github.com/Codeception/Codeception/issues/2234