Phát triển hướng hành vi là gì
Phát triển dựa trên đặc tả hành vi
BDD (Behavior-Driven Development)
BDD là phương pháp phát triển phần mềm kết hợp TDD với mô tả hành vi hệ thống bằng ngôn ngữ kinh doanh dễ hiểu.
Cú pháp Given/When/Then
| Từ khóa | Mục đích | Ví dụ | |---------|----------|-------| | Given | Trạng thái ban đầu | Cho một người dùng đã xác thực | | When | Hành động | Khi họ nhấp "Mua" | | Then | Kết quả mong đợi | Thì sản phẩm được thêm vào giỏ | | And | Điều kiện bổ sung | Và thông báo được hiển thị |
Ví dụ kịch bản (Gherkin)
Feature: Giỏ Hàng
Scenario: Thêm sản phẩm vào giỏ
Given người dùng đang ở trang sản phẩm
And sản phẩm còn hàng
When người dùng nhấp "Thêm vào Giỏ"
Then sản phẩm xuất hiện trong giỏ
And bộ đếm giỏ hàng tăng 1
BDD vs TDD
| Khía cạnh | TDD | BDD | |-----------|-----|-----| | Trọng tâm | Code và unit | Hành vi hệ thống | | Ngôn ngữ | Kỹ thuật | Ngôn ngữ kinh doanh | | Người tham gia | Lập trình viên | Nhóm + kinh doanh | | Tài liệu | Test như code | Tài liệu sống |
Công cụ phổ biến
- Cucumber — Ruby, Java, JS
- SpecFlow — .NET
- Behave — Python
- Jest + Cucumber — JavaScript
- Behat — PHP