2015-01-23 24 views
15

Tôi đang sử dụng Homestead để phục vụ ứng dụng Laravel của mình. Tôi đang cố gắng chạy PHPUnit. Theo số docs:Chạy PHPUnit trong Homestead của Laravel

Tệp thử nghiệm mẫu được cung cấp trong thư mục ứng dụng/kiểm tra. Sau khi cài đặt ứng dụng Laravel mới, chỉ cần chạy phpunit trên dòng lệnh để chạy thử nghiệm của bạn.

Vâng, khi tôi đang "chỉ đơn giản là chạy" phpunit ở gốc dự án của tôi (bên trong môi trường Homestead) Tôi có được điều này:

Chương trình 'phpunit' hiện chưa được cài đặt.

Tôi có cần cài đặt riêng PHPUnit không? Tài liệu không đề cập đến nó. Tôi đang làm gì sai?

Trả lời

22

Bạn có thể cài đặt nó trên toàn cầu trên hệ thống sử dụng.

composer global require phpunit/phpunit 

Tuy nhiên, nếu bạn cần các phiên bản khác nhau cho các dự án khác nhau, điều này có thể gây ra sự cố.

Tùy chọn thay thế là sử dụng phiên bản được cài đặt như một phần của các phụ thuộc của bạn bằng cách tham chiếu đường dẫn đến thư mục vendor của bạn.

./vendor/bin/phpunit 

Bạn thậm chí có thể thêm bí danh vào tệp bí danh của mình trong thư mục ~/Homestead. Bằng cách đó bạn luôn sử dụng phiên bản phpunit được cài đặt với các phụ thuộc dự án của bạn.

alias phpunit=./vendor/bin/phpunit 

Bạn cần phải khởi động lại hộp nhà để sử dụng bí danh.

+0

Cảm ơn rất nhiều. sẽ rõ ràng và làm việc. – lesssugar

+2

Đối với tôi, bản cài đặt phpunit v5.1 này không tương thích với Laravel vào lúc này. Sử dụng 'composer global require 'phpunit/phpunit = 4.4. *" 'Để chỉ định phiên bản. – Mastergalen

7

Bạn có thể cài đặt nó trên toàn cầu với:

$ composer global require "phpunit/phpunit=4.4.*" 
# then use 
$ phpunit 

hoặc bạn có thể sử dụng nó với nhà soạn nhạc địa phương của bạn:

$ composer require "phpunit/phpunit=4.4.*" 
# then 
$ vendor/bin/phpunit 
+0

Cách tiếp cận thứ hai không phù hợp với tôi; phpunit nói 'Bạn cần thiết lập các phụ thuộc dự án bằng cách sử dụng các lệnh sau: ... '. Mặc dù vậy, cài đặt toàn cầu hoạt động. – duma

2

Vì nó là một gói phần mềm cần thiết cho sự phát triển, Laravel cung cấp PHPUnit (yêu cầu-dev trong nhà soạn nhạc), bạn nên tìm thấy nó trong thư mục của nhà cung cấp:

$ your_app/vendor/bin/ 

Bạn có thể chạy lệnh từ thư mục gốc của thư mục ứng dụng của bạn bằng cách nhập:

$ vendor/bin/phpunit 

Tôi hy vọng nó sẽ hữu ích!

Các vấn đề liên quan