如何从Codeception验收测试中访问名为cookies的变量?

如何从Codeception验收测试中访问名为cookies的变量?,cookies,selenium,acceptance-testing,codeception,Cookies,Selenium,Acceptance Testing,Codeception,我正在用Codeception编写一些验收测试,我想检查cookie是否存在。通常,您可以使用(例如,$I->seeCookie('auth_logged_in')),但在我的情况下,cookie的名称包含一个用户特定的哈希(例如,auth_logged_in_49D4; 49d4ab732056d505c2c751e2f7a5d842) 看起来现有的方法——如WebGuy->seeCookie()、WebGuy->grabCookie()等——都希望我传递cookie的确切名称,而不是检查部分

我正在用Codeception编写一些验收测试,我想检查cookie是否存在。通常,您可以使用(例如,
$I->seeCookie('auth_logged_in')
),但在我的情况下,cookie的名称包含一个用户特定的哈希(例如,
auth_logged_in_49D4; 49d4ab732056d505c2c751e2f7a5d842

看起来现有的方法——如WebGuy->seeCookie()、WebGuy->grabCookie()等——都希望我传递cookie的确切名称,而不是检查部分名称

我查看了
WebDriver->seecokie()
方法的工作原理,它调用
$this->WebDriver->manage()->getCookies();
,因此我尝试创建一个
WebGuy->seecokieematches()
方法,该方法使用正则表达式检查cookie名称,但它没有像
webDriver
那样的
$this->webDriver
成员

ErrorException:未定义的属性:Codeception\Module\WebHelper::$webDriver

WebHelper
类是否有方法访问
WebDriver
类的成员


或者有更好的方法吗?

我通过使用找到了解决方法

现在我的WebHelper方法如下所示:

公共函数请参见CookieMatches($pattern){
//Codeception 2.x
$cookies=$this->getModule('PhpBrowser')->client->getCookieJar()->all();
//Codeception 1.x
$cookies=$this->getModule('PhpBrowser')->session->getDriver()->getClient()->getCookieJar()->all();
// [...]
}