【发布时间】:2016-04-24 02:39:30
【问题描述】:
我有一个帮助文件helper.php,我在其中保存了一些帮助函数。
//helper.php
function isAuthLiked($authLikedPosts, $post)
{
return !! Auth::check() && $authLikedPosts->contains('id', $post->id);
}
现在在我的测试用例中,我写道:
$this->assertTrue(isAuthLiked($authrenominations, $post[0]));
当我运行测试用例时,我得到了错误:
致命错误:调用未定义的函数 isAuthLiked() C:\wamp\www\Nom7\tests\integration\UserTest.php 在第 304 行
我在 compose.json 自动加载中添加了帮助文件。但问题仍然存在。
"autoload": {
"classmap": [
"database",
"app/Http/Controllers",
"app/Models"
],
"files":[
"app/helper.php"
],
"psr-4": {
"App\\": "app/",
"Acme\\": "app/Acme/"
}
},
"autoload-dev": {
"classmap": [
"tests/TestCase.php"
],
"files":[
"app/helper.php"
]
},
【问题讨论】:
-
你能发布你的 composer.json 吗?
-
@Schellingerht:已添加。
-
可以在你的测试之外使用这个函数吗?
-
是的,我可以在测试用例之外使用辅助函数,它工作正常。
-
如果你像这样在测试用例中引用类,它会起作用吗:
$this->assertTrue(Helper::isAuthLiked($authrenominations, $post[0]));假设你有一个名为“Helper”的“helper.php”类的别名。或者,如果您这样引用该类:$this->assertTrue(\Path\To\File\helper::isAuthLiked($authrenominations, $post[0]));?
标签: laravel phpunit laravel-5.1