问题描述
我正在对我创建的 Wordpress 插件进行一些修改,以使其可测试。问题是我不知道我想做哪些方法来编写测试。我有一些使用这些函数和全局变量的方法:
is_singular()
$_GET
$_POST
$_SESSION
is_singular
,is_page
,is_home
等功能取决于上下文。我不知道如何在测试中假冒这些上下文。
我尝试将这些作为参数传递给方法,但是有一些钩子不接受其他参数,所以我无法真正地传递它们。
只要提供来自测试课的人可以吗?我真的很难修改插件,这样我不会使用这些插件。
有任何想法吗?
更新
我正在使用 wordpress-tests 和 PHP 单元进行单元测试。在开始之前,我已经对单元测试进行了一些研究,并且有一种做法是当单元测试全局变量应该被避免时。
最佳解决方案
WordPress 远不是单元测试扩展的标准约定。或用于延伸结构。
目前你应该:
-
研究您选择的单元测试框架如何建议与全局变量一起使用,如 PHP 代码
-
查看开始出现的单元测试的 WordPress-specific 工具,如 WP_Mock
参考文献
注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。