Behat mink 测试多个页面

Behat mink test multiple pages

我是新手。 我想做的是测试一堆页面是否存在。

这是我的例子:

Scenario: Page "contact"
Given I am on "/contact"
Then I should see "contact"

在页脚中您会看到 link 联系人 因此,如果有一些 php 错误,它会退出并且我没有看到页脚,所以 behat 会失败。

但是我可以 select 多个这样的名字吗:

Given I am on [/, /contact, /about-me] etc

你有很多选择,但我现在只给你两个,所以更多的,你可以自己研究:

这是很多人会做的事情:

特征文件:

Scenario: Checking pages and their content
Given I am on "/"
Then I should see "welcome home"
When I am on "/contact"
Then I should see "welcome to contact page"
When I am on "/about-me"
Then I should see "welcome to about me page"
When I am on "/whatever"
Then I should see "welcome to whatever page"
......
......

这是验证文件物理存在的另一个选项:

特征文件:

Scenario: Checking pages and but not their content
Given I am on "/"
Then I should see "welcome home"
And the files below must exist in my project folder:
      | file |
      | /path/to/my/project/files/contact.tml  |
      | /path/to/my/project/files/about-me.tml  |
      | /path/to/my/project/files/whatever.tml  |

在您的 FeatureContext 文件中:

class FeatureContext extends MinkContext
{
    /**
     * @When /^the files below must exist in my project folder:$/
     */
    public function theFilesBelowMustExistInMyProjectFoder(TableNode $table)
    {
        foreach ($table->getHash() as $file) {
            if (file_exists($file) !== true) {
                throw new Exception(sprintf('File "%s" not found', $file));
            }
        }
    }
}