2013-06-03 20 views
5

Tôi gặp một số vấn đề với quá trình init Behat (2.4.*@dev) bên trong gói Symfony2 (ver 2.2.2). Sau lệnh:Vấn đề về gói Behat và Symfony2?

bin/behat --init "@CompanyAppBundle" 

thư mục hoạt động được tạo bên trong thư mục gốc ứng dụng, không phải trong gói. Đầu ra là:

+d features - place your *.feature files here 
+d features/bootstrap - place bootstrap scripts and static files here 
+f features/bootstrap/FeatureContext.php - place your feature related code here 

Vấn đề ở đâu?

+0

Sự cố được giải quyết. Tôi đặt behat.yml trong thư mục app/config /, vì vậy bin/behat không thể tìm thấy nó. – mariuszgil

+1

Bạn có thể giữ tập tin 'behat.yml' trong thư mục' app/config' nếu muốn. '--config' tùy chọn để giải cứu! http://docs.behat.org/guides/6.cli.html#initialization-options –

Trả lời

0

Hoặc Behat không thể tìm thấy cấu hình của bạn, hãy thử xác định nó như vậy:

bin/behat -c alternative/location/to/behat.yml --init "@CompanyAppBundle" 

Hoặc bạn chưa kích hoạt các Symfony2Extension trong cấu hình (mặc định) của bạn, hãy thử xác định nó như vậy:

default: 
    extensions: 
     Behat\Symfony2Extension\Extension: 
2

Không chắc về Behat v2.4, nhưng đối với Behat v3.0, thêm bó để chỉ thị 'suites' của behat.yml:

# behat.yml 
default: 
    suites: 
    company_app_suite: 
     type: symfony_bundle 
     bundle: CompanyAppBundle 
    extensions: 
    Behat\Symfony2Extension: ~ 
+0

Tôi đã thử rằng một và thư mục Tính năng đã được thêm vào gói. Nhưng khi Im chạy bộ, nó không thể tìm thấy FeatureContext. bạn có thể chỉ cho tôi cấu trúc thư mục và cách thiết lập thêm không? –

+0

Cấu trúc thư mục của tôi là: /features/bootstrap/{project_name}/Bundle/{bundle}Bundle/Features/Context/FeatureContext.php trong đó {project_name}/Bundle/{bundle} Gói có cấu trúc giống như dưới thư mục src. – Andrew

+0

Tôi hiểu. Tôi nghĩ họ nên sống bên trong thư mục src /. Btw bạn có quen thuộc với Domain Drive Design không? Bởi vì tôi tự hỏi tôi nên đặt thử nghiệm cho Mô hình miền của mình ở đâu –