Tôi đang bối rối, vì vậy nếu tôi sử dụng SuperTest, có vẻ như nó có xác nhận mong đợi riêng của nó, thì tôi không cần phải lo lắng về việc sử dụng Chai? Hoặc khi tôi yêu cầu Chai, Supertest biết về nó và đang sử dụng nó như là cơ chế mong đợi?Mong đợi của SuperTest so với Chai.expect
Trả lời
SuperTest mở rộng đối tượng request
của SuperAgent để bao gồm hàm expect
. Nó không hoạt động giống như xác nhận của expect
của Chai, nhưng có thể được sử dụng để xác nhận trạng thái phản hồi http và các tiêu đề, và có thể được trộn lẫn với Chai expect
của Chai.
request(app).
get('/').
expect(200). // request.expect, is status code 200?
expect('Content-Type', /json/). // request.expect, does content-type match regex /json/?
expect(function(res){ // request.expect, does this user-provided function throw?
// user-provided function can include Chai assertions
expect(res.body).to.exist;
expect(res.body).to.have.property('status');
}).
end(done);
thx. Chỉ cần tự hỏi những gì tình hình bạn muốn trong một thử nghiệm BDD khẳng định bằng cách sử dụng 'kỳ vọng' SuperTest và sau đó ngay sau khi sử dụng một Chai 'mong đợi'. Tôi có nghĩa là một khi bạn mong đợi một cái gì đó và nó là sự thật, kiểm tra BDD của bạn đi ... Tôi chỉ không thấy một nhu cầu cho Chai mong đợi sau đó khi thử nghiệm tích hợp yêu cầu/phản ứng trong BDD của bạn hoặc các bài kiểm tra tích hợp khác ... – PositiveGuy
- 1. Sự khác biệt nào được mong đợi của XHTML5 so với HTML5?
- 2. Mong đợi mong đợi nhiều thay đổi not_to trong rspec
- 3. Jasmine mong đợi logic (mong đợi A HOẶC B)
- 4. Hành vi ngoài mong đợi của window.innerwidth
- 5. ElasticSearch biểu diễn mong đợi
- 6. Chèn MySQL, nhanh hơn trong PHP so với C++, điều này có được mong đợi không?
- 7. T_PAAMAYIM_NEKUDOTAYIM không mong đợi, mong T_NS_Separator
- 8. Rspec `eq` so với` eql` trong các bài kiểm tra `mong đợi`
- 9. Jasmine array.length mong đợi
- 10. Mục mong đợi trong mảng
- 11. Hàng đợi thông thường so với hàng đợi SEDA
- 12. Lỗi cú pháp, '\ n' không mong đợi, mong đợi tCOLON2 hoặc '[' hoặc '.'
- 13. Gói CATextLayer của iOS không hoạt động như mong đợi
- 14. Hàng đợi so với Dequeue trong java
- 15. __import__ của Python không hoạt động như mong đợi
- 16. Đăng nhập SSH với mong đợi (1). Làm thế nào để thoát khỏi mong đợi và vẫn còn trong SSH?
- 17. Hàng đợi Redis so với MSMQ
- 18. lỗi cú pháp, T_ENCAPSED_AND_WHITESPACE không mong đợi, mong đợi T_STRING hoặc T_VARIABLE hoặc T_NUM_STRING
- 19. Hiệu suất mong đợi của phép tính MD5 trong javascript?
- 20. Uncaught SyntaxError: Chuỗi không mong đợi trong JavaScript của tôi
- 21. Kết thúc không mong đợi của luồng đầu vào ZLIB
- 22. Hàng đợi tin nhắn so với sự khác biệt hàng đợi của nhiệm vụ
- 23. Đường ống so với hàng đợi msg
- 24. NUnit: thử nghiệm với KHÔNG mong đợi ngoại lệ
- 25. Hiệu suất mong đợi của ZeroMQ là gì?
- 26. Rails 4 - lỗi cú pháp, tIDENTIFIER không mong đợi, mong đợi kết thúc đầu vào
- 27. UICollectionViewLayout không làm việc như mong đợi
- 28. Lỗi cú pháp Gitlab PUSH, không mong đợi ':', mong đợi $ end
- 29. Mục tiêu-C - So sánh các số nguyên không hoạt động như mong đợi
- 30. JSLint không mong đợi các dấu ngã của tôi
Tôi nhầm lẫn với câu hỏi ở đây là gì? Bạn có muốn hiểu các hoạt động bên trong của các khung kiểm tra và các thư viện xác nhận không? – Clarkie
Khi bạn sử dụng SuperTest để thực hiện một yêu cầu và bạn bắt đầu khẳng định bằng cách sử dụng 'mong đợi' tôi giả định vì tôi đã xác định mong đợi thông qua thư viện xác nhận Chai đó là thư viện mà nó đang sử dụng. Nói cách khác SuperTest không có thư viện xác nhận riêng của mình phải không? Bạn phải nói với nó thư viện nào bằng cách thiết lập biến mong đợi như bạn làm trong Mocha và sau đó SuperTest có thể sử dụng biến đó bằng cách nào đó gắn thêm nó vào cuối hàm yêu cầu của nó gọi – PositiveGuy
hmm chỉ cần xem lại tài liệu của SuperTest nó nói rằng nó sử dụng chức năng 'mong đợi' của SuperAgent, có vẻ như bởi vì nó nói 'xác nhận HTTP được thực hiện dễ dàng thông qua siêu đại lý.' Nhưng sau đó nó cũng nói 'SuperTest làm việc với bất kỳ khuôn khổ kiểm tra nào, đây là một ví dụ mà không sử dụng bất kỳ khung kiểm tra nào cả:' vì vậy tôi bị nhầm lẫn ở đây. – PositiveGuy