dongqiao2077 2015-01-06 21:01
浏览 147
已采纳

无法使用PHPStorm在PHPUnit测试中解析一个目录命令

I have PHPUnit set up in my PHPStorm project. I've referenced the PHPUnit phar file and have a PHP executable linked to my PHPStorm run configuration. My directory structure looks like:

/lib/classes/Class.php
/lib/vendor/phpunit.phar
/lib/test/ClassTest.php

In my ClassTest.php file, I reference the other two files with:

require_once (__DIR__ . "../vendor/phpunit.phar");
require_once (__DIR__ . "../classes/Class.php");

I get the following error when I run my test:

Fatal error: require_once(): Failed opening required 
'C:\Users\me\PhpstormProjects\myproject\lib\tests../vendor/phpunit.phar'

It seems like the PHP parser isn't correctly parsing the up one directory ../ command.

Why is this happening?

  • 写回答

1条回答 默认 最新

  • doujiu8918 2015-01-06 22:06
    关注

    First of all: this line is not needed (at all) as PHPUnit will already be loaded at that time.

    require_once (__DIR__ . "../vendor/phpunit.phar");
    

    Secondly: __DIR__ constant in PHP does not contain trailing slash. When used in require/include statements (and other places when building full file path) you have to add it yourself.

    In your particular case it has to be (note / before ..):

    require_once (__DIR__ . "/../classes/Class.php");
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?