RSPec là một khuôn khổ thử nghiệm ruby tuyệt vời (để kiểm tra phát triển theo định hướng), bất cứ ai biết điều gì đó giống như rspec nhưng, đối với PHP?Bất cứ ai cũng biết một cái gì đó giống như RSPec cho PHP?
Trả lời
PHPUnit là tiêu chuẩn thực tế cho tính năng UnitTesting trong PHP.
Nó có thể làm BD Testing đến một mức độ giới hạn:
Lớp PHPUnit_Extensions_Story_TestCase thêm một khuôn khổ câu chuyện mà faciliates định nghĩa của một ngôn ngữ Domain-cụ thể cho phát triển Behavior-Driven. Bên trong một kịch bản, cho trước(), when(), và sau đó() mỗi đại diện cho một bước. và() là cùng loại với bước trước đó. Các phương pháp sau đây được khai báo trừu tượng trong PHPUnit_Extensions_Story_TestCase và cần phải được thực hiện:
runGiven(&$world, $action, $arguments) ... runWhen(&$world, $action, $arguments) ... runThen(&$world, $action, $arguments) ...
Edit: An more sophisticated alternative might be Cucumber với Behat
PHPSpec là khung công tác Phát triển theo hành vi cho php. Tuy nhiên, tôi chưa sử dụng nó, vì vậy tôi không thể bình luận về nó một cách cụ thể.
Liên kết này hoạt động: http://www.phpspec.net/ – NicoGranelli
Behat! Được xây dựng dựa trên các thành phần của Symfony 2. Cú pháp, không tốt bằng việc triển khai Ruby nhưng vẫn nhận được lợi ích của BDD.
Tôi đã tự tình cờ và chưa sử dụng nó. Từ một cái nhìn, có vẻ như nó đang sử dụng bao đóng (mà nó sẽ cần phải làm để làm việc như RSpec/dưa chuột) mà là một bổ sung PHP 5.3.
Behat là một bản sao PHP của dưa chuột, không phải RSpec. Công cụ này là dành cho thử nghiệm hành vi ở cấp độ tích hợp (aka. Kiểm tra chấp nhận), không thực sự kiểm tra đơn vị như RSpec. –
Có một vài bản sao RSpec trong PHP.
Cũng có một thử nghiệm ban đầu khuôn khổ Codeception
Nếu bạn chỉ Intrested trong đầu ra của các bài kiểm tra, bạn có thể sử dụng phpunit-progress mà làm cho kết quả xét nghiệm của bạn trông giống hệt như kết quả RSpecs'.
Bee là rất giống nhau, nó vẫn còn rất trẻ, nhưng tôi sử dụng nó cho một số dự án.
Hy vọng điều này sẽ giúp ...
- 1. Bất cứ ai cũng biết tumblr được viết bằng số
- 2. Bất cứ ai cũng biết về một ứng dụng dịch cộng tác OpenSource?
- 3. Bất cứ ai biết gì về OLAP Internals?
- 4. Có cái gì đó giống như Incanter cho Haskell?
- 5. Bất cứ ai cũng có một bản sao của MSIINV.EXE?
- 6. Bất cứ ai cũng biết về một động cơ .Net Chess tốt
- 7. Bất cứ ai cũng biết cách giải quyết tốt cho việc thiếu một ràng buộc chung enum?
- 8. Có cái gì đó giống như `last` cho` map`?
- 9. Có cái gì đó giống như WMI cho Linux?
- 10. Một cái gì đó giống như chức năng đại biểu gọi lại trong php
- 11. Bất cứ ai cũng biết Bản đồ giao dịch chung | Đặt | Danh sách
- 12. Bất cứ ai cũng biết cách Dán dưới dạng Nhận xét trong VS2010?
- 13. Ruby có một cái gì đó giống như sự hiểu biết danh sách của Python?
- 14. Bất cứ ai cũng biết hướng dẫn không gian tên URL Django tốt?
- 15. Bất cứ ai cũng biết về một nguồn tài nguyên tốt cho các tờ định kiểu QT?
- 16. Bất cứ ai cũng biết một chức năng trang nhã để sửa chữa các trường hợp tên?
- 17. Bất cứ ai cũng biết GPU của Nvidia có lớn hay nhỏ không?
- 18. Bất cứ điều gì giống như C# params trong c + +?
- 19. Bất cứ điều gì giống như SciPy trong Ruby?
- 20. Bất cứ ai cũng có một cách tốt để gỡ lỗi WPF tập trung?
- 21. fsi.exe Hội: Bất cứ ai biết cách nhúng nó?
- 22. Bất cứ ai có thể cho tôi biết mã hóa này là gì?
- 23. Liệu Perl có một cái gì đó giống như Java/PHP Docs?
- 24. MATLAB Có một cái gì đó giống như danh sách hiểu như nó là trong python?
- 25. Bất kỳ ai cũng biết hướng dẫn về Silverlight tốt?
- 26. Bất cứ điều gì tương tự như Hibernate trong PHP?
- 27. Có cái gì đó giống như Python 'với' trong C#?
- 28. Bất cứ ai cũng biết tại sao nextEventMatchingMask: untilDate: inMode: dequeue: mất nhiều ms để trả về một sự kiện?
- 29. ReSharper (hoặc một cái gì đó giống như nó) cho Qt?
- 30. Vim cho Word (hoặc một cái gì đó giống như nó)
[Kahlan] (https://github.com/kahlan/kahlan) là triển khai gần hơn (lưu ý: Tôi là người tạo). – Jails