编程语言
首页 > 编程语言> > php – 使用Codeception检查外部重定向

php – 使用Codeception检查外部重定向

作者:互联网

我想检查一下这样的事情:

<?php

$I->amOnPage('/go/google');
$I->seeCurrentUrlEquals('http://google.com');

但我得到错误:

Failed asserting that two strings are equal.
--- Expected
+++ Actual
@@ @@
-'http://google.com'
+''

Scenario Steps:
2. I see current url equals "http://google.com"
1. I am on page "/go/google"

想法只是检查用户是否被重定向到外部资源.

解决方法:

不幸的是,Codeception的seeCurrentUrlEquals()和seeCurrentUrlMatches()方法被错误地命名,因为它们不允许对整个URL进行断言,而只是对URI部分进行断言.

我通过在Helper类中声明以下方法解决了这个问题:

public function seeFullCurrentURLEquals($value)
{
    return ($this->getModule('PhpBrowser')->client->getHistory()->current()->getUri() == $value);
}

然后,在场景中,您可以简单地执行以下操作:

$I->seeFullCurrentUrlEquals('google.com');

标签:php,testing,codeception
来源: https://codeday.me/bug/20190529/1176507.html