1

我正在尝试通过 Behat/Mink 测试 RSS 提要。不幸的是,我一直收到一条错误消息:

当前节点列表为空。

有谁知道如何通过 Behat/Mink 测试 XML 响应(在 xml 中搜索字符串)?

编辑

我需要找到一些方法,最好是让它与 Behat/Mink 一起运行。但如果那根本不可能,我也可以接受一种解决方法。一个关于如何做到这一点的例子会很棒!

4

3 回答 3

6

在您的 FeatureContext.php 文件中,您可以通过以下方式获取原始内容

$xml = $this->getSession()->getDriver()->getContent();

然后您可以使用 Regex/DomDocument 来测试返回的 xml 内容。

于 2013-08-04T09:28:49.757 回答
3

Mink 是一个浏览器仿真抽象层。有些浏览器可以阅读 RSS,有些则不能。解析自定义 XML 不是 Mink 的责任。为此使用 Behat + Web 爬虫 + DomDocument(或任何 PHP RSS 解析器)的组合。

于 2013-05-21T10:16:47.947 回答
2

正如@everzet 提到的,Mink 不是这项工作的最佳工具,因为它是浏览器模拟器而不是 http 客户端。

不过,您不仅限于 Mink,还可以使用任何 PHP http 客户端(如guzzlebuzz),甚至file_get_contents()可以获取 rss 提要。

于 2013-06-13T07:16:10.980 回答