2015-08-03 13 views
6

PhpStorm có một số hành vi kỳ lạ khiến tôi phát điên. Tôi đã thiết lập dự án của mình để có một số source và một thư mục test. Thư mục source phải dành cho mã sản xuất, trong khi thư mục test phải chứa tất cả các kiểm tra phpunit.Làm thế nào để tạo ra các xét nghiệm trong các bài kiểm tra/thư mục trong PhpStorm?

Trong những thư mục, cấu trúc thư mục được nhân đôi - nếu tôi có một lớp \foo\Bar, sau đó là src/foo/Bar.phptest/foo/BarTest.php.

Tôi đã đánh dấu src/test/ như nguồn và thư mục kiểm tra trong PhpStorm, tuy nhiên, mỗi khi tôi muốn tạo ra một bộ thử nghiệm mới cho một lớp học, PhpStorm mặc định để đặt lớp thử nghiệm vào thư mục src/ bên cạnh các lớp thử.

Có thể thay đổi điều đó, tuy nhiên sẽ khó chịu hơn khi cùng một thư mục trong test/ chưa tồn tại. Thay vì tạo ra nó, PhpStorm sẽ từ chối tạo bộ thử nghiệm đó cho tôi.

Có lẽ tôi hiểu nhầm khái niệm đằng sau việc quản lý thử nghiệm trong PhpStorm một chút - bởi vì nó không thể là trải nghiệm người dùng tồi.

Có điều gì đó tôi đang làm sai, hoặc một cái gì đó mà tôi có thể cấu hình để làm cho tình hình ít đau đớn?

+1

Không - không có gì sai. Nó không hoạt động theo cách này - devs mã hóa nó để hành xử theo cách nó là ngay bây giờ. Có vé về việc thay đổi hành vi như vậy giống như bạn mô tả/mong muốn .. nhưng cho đến nay nó không giống như nó nằm trong danh sách ưu tiên của họ ... – LazyOne

+0

Tôi bấm tạo kiểm tra trong thư mục kiểm tra sau đó tôi chọn lớp và không gian tên thích hợp. – Robert

Trả lời

2

Bạn đang làm không có gì sai. Nó không hoạt động theo cách này - devs mã hóa nó để hành xử theo cách nó là ngay bây giờ.

IDE ban đầu đã sử dụng khả năng của PHPUnit để tạo các lớp thử nghiệm (sau đó chức năng như vậy là một phần của PHPUnit thực). Sau đó, người tạo PHPUnit đã chuyển chức năng này thành gói riêng biệt (phpunit-skelgen) .. và bạn phải cài đặt nó theo cách thủ công/riêng biệt. Sau đó, devs quyết định drop phpunit-skelgen support completely và triển khai thực hiện hiện tại (cũng phù hợp hơn với các thói quen tương tự trong các IDE khác được xây dựng trên nền tảng/công nghệ IDEA được hỗ trợ bởi các IDE đó).

Có khá ít vé về việc thay đổi hành vi như vậy để giống như bạn mô tả/mong muốn .. nhưng cho đến nay nó không giống như nó trong danh sách ưu tiên của họ ...

Theo dõi những vé (sao/bình chọn/bình luận) để nhận được thông báo về tiến độ.

2

Kể từ ngày phát hành 2016.3 PHPStorm hiện thực hiện kiểm tra địa điểm trong thư mục kiểm tra được chỉ định, cung cấp chính xác những gì bạn yêu cầu trong câu hỏi của bạn.

+0

Bạn có biết chức năng này đã được hoàn nguyên không? Tôi đã thử điều này với 2017.2 và tôi nhận được kết quả tương tự như OP. – Thelonias

+0

Tương tự đối với tôi, nhưng nó thay đổi thư mục để sửa một thư mục khi bạn thay đổi không gian tên để phản ánh thư mục kiểm tra của bạn trong cửa sổ bật lên 'Tạo thử nghiệm mới ...'. IIRC nó hoạt động vào đầu phiên bản 2017, nhưng dừng lại sau khi nâng cấp. – panK

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