Tôi đang sử dụng boost :: test và cần sử dụng một khung mocking với nó. Có ai có bất cứ đề nghị?Boost :: test and mocking framework
Trả lời
Gần đây tôi đã thực hiện tìm kiếm thử nghiệm đơn vị và khung mocking cho dự án mới nhất của tôi và đi với Google Mock. Nó có tài liệu tốt nhất và có vẻ khá nổi bật (mặc dù tôi chưa tạo ra các đối tượng giả rất phức tạp). Ban đầu, tôi đã nghĩ đến việc sử dụng boost::test
nhưng kết thúc bằng cách sử dụng Google Test thay vào đó (tôi nghĩ đó là điều kiện tiên quyết cho Google Mock, ngay cả khi bạn sử dụng một khung kiểm tra khác). Nó cũng có tài liệu tốt và đã có hầu hết các tính năng tôi mong đợi.
GoogleMock có phần sử dụng với another framework.
Bạn có thể thử Turtle!
lợi thế cho Rùa? –
Vâng, nó dễ dàng tích hợp với boost :: test: bạn sẽ không cần tất cả các giải pháp được yêu cầu để thực hiện một tăng :: thử nghiệm dự án sử dụng gmock, ví dụ (xem thêm http://stackoverflow.com/questions/38890959/initgooglemock-nguyên nhân-bộ nhớ-bị rò rỉ-với-boosttest? noredirect = 1 # comment65142935_38890959). – Ioanna
Here bạn đã có ví dụ về cách sử dụng Google Mock với Kiểm tra tăng cường. Tôi thích Boost Test vì tôi thường sử dụng Boost libraries khác.
Fake-It là khung công tác mô phỏng đơn giản cho C++ sử dụng các tính năng C++ 11 mới nhất để tạo API biểu cảm (nhưng rất đơn giản). Với FakeIt, không cần phải khai báo lại các phương thức cũng như không tạo ra một lớp dẫn xuất cho mỗi mô hình và nó có tích hợp tích hợp kiểm thử tăng cường ::. Đây là cách bạn giả mạo:
struct SomeInterface {
virtual int foo(int) = 0;
};
// That's all you have to do to create a mock.
Mock<SomeInterface> mock;
// Stub method mock.foo(any argument) to return 1.
When(Method(mock,foo)).Return(1);
// Fetch the SomeInterface instance from the mock.
SomeInterface &i = mock.get();
// Will print "1"
cout << i.foo(10);
Có nhiều tính năng khác để khám phá. Tiếp tục và give it a try.
- 1. Mocking với Boost :: Kiểm tra
- 2. Mocking framework từ Microsoft?
- 3. Windows Phone 7 mocking framework?
- 4. Mocking Entity Framework Bối cảnh
- 5. Sorm and Play Framework 2.1
- 6. Javascript semaphore/test-and-set/lock?
- 7. boost :: bind and class member function
- 8. boost iterator facade and dereference() function
- 9. Mocking framework cho .NET trên Monotouch?
- 10. Mocking framework tốt nhất cho Silverlight 5
- 11. Mocking and Unit Testing Solr và Lucene Index
- 12. Unit Test json output trong Zend Framework
- 13. boost :: python and set :: erase -> hành vi lạ
- 14. boost :: python and weak_ptr: công cụ biến mất
- 15. Test-and-Set được sử dụng để làm gì?
- 16. Không phụ thuộc vào Giao diện Mocking Framework cho C#
- 17. Zend Framework 2 Sql Chọn với OR và AND
- 18. JQuery Mocking
- 19. Mocking HttpContextBase với Moq
- 20. làm thế nào để tổ chức các trường hợp thử nghiệm với boost :: test library?
- 21. Có thể sử dụng BOOST_PARAM_TEST_CASE với đăng ký tự động trên boost :: test không?
- 22. Mocking scala object
- 23. Sự khác biệt giữa test -h và test -L
- 24. Sự khác nhau giữa db: test: clone, db: test: clone_structure, db: test: load, và db: test: preparation?
- 25. Nhập khẩu Mocking bằng Python
- 26. Mocking EventHandler
- 27. Mocking Guid.NewGuid()
- 28. Python Mock - Mocking vài mở
- 29. Mocking với Flexmock datetime.datetime.now
- 30. Mockito: Mocking "Blackbox" Dependencies
Thật vậy, nhưng nó vẫn dễ bị rò rỉ bộ nhớ và yêu cầu cách giải quyết: http://stackoverflow.com/questions/38890959/initgooglemock-causes-memory-leak-with-boosttest?noredirect=1#comment65142935_38890959 – Ioanna