2012-07-31 2 views
36

Symfony2를 사용하고 있습니다. 모든 것이 설치되어 있습니다. 테스트는 지금까지 그렇게 잘 작동합니다.PHPUnit에서 IDE 자동 완성을 얻으려면 어떻게해야합니까?

PHPUnit의 메소드를 자동 완성하고 싶습니다.

심포니의 WebTestCase 클래스는 PHPUnit_Framework_TestCase에서 불과 아래와 같이 확장 :

abstract class WebTestCase extends \PHPUnit_Framework_TestCase 

부모 클래스는하지만 존재하지 않는으로 강조 표시됩니다.

PHPUnit의 라이브러리를 사용하도록 IDE에 지시하려면 어떻게해야합니까? 내가 PHPStorm에게
phpunit을 사용하고

답변

52

라이브러리로 추가 ... 당신은 '외부 라이브러리'에 추가 편집중인 프로젝트에 경로 /Users/myUser/pear/share/pear/PHPUnit/로 사용할 수 있습니다.

다음은 포함되어야합니다. -> 설정 -> 프로젝트 설정 -> PHP를하고 거기에 경로를 추가 파일로 이동 PHPStorm 사용자의

/usr/share/php/PHPUnit 
+0

이렇게 간단하고 효과적이었습니다. 바보 같은 저 : D –

+9

참고로 Mac의 프로젝트 설정에서 PhpStorm -> Preferences를 클릭하고 PHP (프로젝트 설정에서)를 클릭 한 다음 오른쪽에 포함 경로에 경로를 추가 할 수 있습니다. – Shivaas

+1

phpunit의 .phar 구현은 어떻습니까? 업데이트 : lib의 자작 (homebrew) 설치를 사용하여 내 Mac에서이 문제를 해결했습니다. –

17

(우분투 12.04은)는 외부 라이브러리이 폴더를 추가했다.

16

:

나를 위해
+5

phpunit을 설치 한 사람 homebrew, 경로는/usr/local/opt/phpunit/libexec /입니다. (심볼릭 링크이므로 버전이 변경된 경우에도 일정하게 유지됩니다) – Loren

+0

@Loren, 고마워요! –

2

내가 OSX, phpunit을이 사제와 phpstorm에 의해 설치 한 9.0

어떻게 나를 위해 작동합니다 열린 환경 설정을 누르거나 cmd를 +, -> 언어 & 프레임 워크 -> PHP -> 포함 경로 ->은/usr "추가 /local/Cellar/phpunit/4.7.6/libexec/ "

3

phpunit/phpunit 패키지를 composer.json 파일의 require-dev 섹션에 추가 할 수 있습니다.

composer install을 실행 한 후 PHPStorm은 PHPUnit 클래스에 대해 알 수 있습니다.

+0

답변에 몇 가지 세부 사항을 추가 할 수 있습니까? –

+0

이것은 나에게 좋았습니다. 수동으로 lib를 추가하면 (다른 답변처럼) 나에게 도움이되지 않습니다. – Czechnology

+0

Maxim : 예를 들어. ''phpunit/phpunit ': "^ 5.4.6"을'composer.json'의''require-dev "'섹션에 추가하고'composer update'를 실행하십시오. – Czechnology

10

PhpStorm 2016.2는이 경우 버그이기도합니다.

자동 완성에 $ this-> 컨텍스트에서 옵션으로 정적 메서드가 더 이상 포함되지 않습니다. (https://blog.jetbrains.com/phpstorm/2016/07/completion-changes-in-phpstorm/#more-10425)

phpunit 테스트는 정적 메소드로 정의되었지만 $ this->를 통해 호출되었으므로 이제 phpunit의 자동 완성이 효과적으로 중단됩니다.

그들은 다음 EAP (https://youtrack.jetbrains.com/issue/WI-32530)에서 phpunit에 대한 변경 사항을 롤백했습니다.

안정적인 다음 릴리스까지 해결 방법 : CTRL-Space를 두 번 누릅니다. 그러면 자동 완성 필드에 정적 메소드가 표시됩니다.

+3

와우, 고마워, 이것에 대해 궁금해서 몇 시간 동안 버그를 검색했다. 당분간 ctrl 공간이 작동한다. – Nick

0

나는 PHPStorm 2017.1.4를 가지고 있고 나의 OS는 우분투 16.04이다. 이미 phpunit.phar를/usr/local/bin에 설치했습니다.

예제 경로에 ~/WORK/..를 사용 하겠지만 전체 경로/home/myname/WORK /를 사용해야합니다.난 그냥 내 집 내부의 폴더로 이동됩니다 무슨 짓을

작곡가 후

composer require phpunit/phpunit 

내가 새 프로젝트를 추가 phpunit을 다운로드 이루어졌다에 경로를 포함 : (같은 : ~/WORK /) 실행

~/WORK/vendor/phpunit/phpunit/src 

이제 PHPUnit의 자동 완성 기능을 모두 사용할 수있게되었습니다. PHPUnit의 소스 코드로 바로 이동할 수 있으며, PHPUnit의 코드를 작곡가로 업데이트 할 수 있습니다. 또한/usr/local/bin에서 phpunit.phar를 제거하고 ~/WORK/vendor/bin/phpunit에 대한 링크로 바 꾸었습니다.

관련 문제