Những khung công tác nào tồn tại để kiểm tra đơn vị mã Objective-C? Tôi muốn một khung tích hợp độc đáo với Apple Xcode.
Những khung công tác nào tồn tại để kiểm tra đơn vị mã Objective-C? Tôi muốn một khung tích hợp độc đáo với Apple Xcode.
Câu trả lời:
Xcode bao gồm XCTest, tương tự như OCUnit , khung thử nghiệm đơn vị Objective-C và có hỗ trợ đầy đủ để chạy thử nghiệm đơn vị dựa trên XCTest như một phần của quy trình xây dựng dự án của bạn. Hỗ trợ kiểm tra đơn vị của Xcode được mô tả trong Tổng quan về Xcode: Sử dụng Kiểm tra đơn vị .
Quay trở lại Xcode 2 ngày, tôi đã viết một loạt các bài đăng weblog về cách thực hiện một số tác vụ phổ biến với thử nghiệm đơn vị Xcode:
Mặc dù sử dụng OCUnit chứ không phải XCTest, các khái niệm phần lớn giống nhau.
Cuối cùng, tôi cũng đã viết một vài bài viết về cách viết bài kiểm tra cho giao diện người dùng của Cốc Cốc; cách thức cấu trúc của Cacao làm cho nó tương đối đơn giản, bởi vì bạn không phải quay vòng lặp sự kiện hoặc bất cứ điều gì tương tự như vậy trong hầu hết các trường hợp.
Điều này cho phép thực hiện phát triển theo hướng kiểm tra không chỉ cho mã cấp mô hình mà còn cả mã cấp điều khiển và thậm chí mã cấp độ xem.
Hãy xem GHUnit của Gabriel Handford:
"Mục tiêu của GHUnit là:
Chạy thử nghiệm đơn vị trong XCode, cho phép bạn sử dụng đầy đủ Trình gỡ lỗi XCode. Một GUI đơn giản để giúp bạn hình dung các bài kiểm tra của mình. Hiển thị dấu vết ngăn xếp. Có thể cài đặt dưới dạng khung (đối với ứng dụng Cacao) với thiết lập mục tiêu đơn giản (hoặc không); hoặc dễ dàng gói vào dự án iPhone của bạn. "
Tôi bắt đầu sử dụng giàn kiểm tra hộp công cụ Google cho iPhone và nó hoạt động rất tốt đối với tôi.
Kiểm tra OCUnit . Mạng lưới nhà phát triển của Apple có một giới thiệu tuyệt vời .
Lưu ý rằng dự án Google Toolbox for Mac (GTM) chỉ đơn giản là mở rộng / tăng cường khung SenTestingKit của Apple (vốn được dựa trên OCUnit). Như họ nói trên trang web của dự án:
GTM có một số cải tiến đối với SenTestingKit tiêu chuẩn cho phép bạn thực hiện kiểm tra đơn vị UI, kiểm tra đơn vị ràng buộc tự động, theo dõi nhật ký và kiểm tra đơn vị trên iPhone, cũng như các công cụ để kiểm tra mã tĩnh và động của mã.
Lưu ý các nhận xét sau về kiểm tra giao diện người dùng:
GTM có hỗ trợ rộng rãi cho các bài kiểm tra đơn vị giao diện người dùng. Nó hỗ trợ kiểm tra cả hình ảnh và / hoặc trạng thái bên trong của hầu hết tất cả các đối tượng UI Cacao / UIKit tiêu chuẩn và giúp bạn dễ dàng mở rộng hỗ trợ này cho các đối tượng UI của riêng bạn.
Xem trang " Xác minh mã và kiểm tra đơn vị " của họ để biết hướng dẫn về cách sử dụng.
Tôi đi đến kết luận rằng GHUnit là khung thử nghiệm tiên tiến nhất cho Objective-C. Tôi đã làm một roundup thử nghiệm khuôn khổ trên blog của tôi. Nó là linh hoạt nhất về mặt triển khai (iphone, giả lập hoặc mac os bản địa) và khả năng khẳng định. Bởi vì nó dựa trên GTM, nó thừa hưởng tất cả các lợi thế của GTM so với SenTestingKit nhưng cũng bổ sung thêm rất nhiều. Một phần thưởng khác là nó đang được duy trì rất tích cực.
Tôi đã tiến hành nỗ lực để tích hợp OCMock vào GHUnit, nó hoạt động rất tốt!. Bạn có thể lấy mã trên github .
Tôi nhận ra đây là một câu hỏi cũ, nhưng nếu bạn thích thử nghiệm theo kiểu BDD (rspec, Jasmine, v.v.) so với thử nghiệm theo kiểu xUnit (Test :: Unit, JSUnit, JUnit, v.v.), thì bạn có thể xem xét việc kiểm tra Cedar . Cedar mang thử nghiệm kiểu BDD cho Objective-C, giờ đây ngôn ngữ hỗ trợ các bao đóng.
Chúng tôi rất vui khi sử dụng Cedar cho các dự án iOS của chúng tôi tại Pivotal Labs và chúng tôi đang tích cực làm việc để cải thiện nó. Mọi phản hồi hoặc đề xuất đều được chào đón tại cedar-discuss@googlegroups.com
Tôi khuyên bạn nên gh-unit, nó có GUI đẹp cho kết quả kiểm tra.
Các hỗ trợ đơn vị kiểm tra đóng gói trong xcode (đối với thiết lập đơn giản của nó) kết hợp với ocrunner (đối với một số Autotest / Growl tốt lành) hiện đang yêu thích thiết lập obj-C Đơn vị kiểm tra của tôi.
đây là rất nhiều trong số họ
Sen: te (người tạo ra khung thử nghiệm đi kèm với Xcode) giải thích cách sử dụng OCUnit với dự án iPhone: đơn giản-iphone-ipad-unit-test .
Matt Gallagher của ca cao với tình yêu có một bài viết rất hay về thử nghiệm đơn vị.
Tôi sẽ đề nghị xem xét Kiwi, một khung thử nghiệm BDD mã nguồn mở cho iOS: Kiwi
Kiểm tra các dự án WIKI để bắt đầu hoặc nhận được cuốn sách Daniel Steinberg của "Test Driving Phát triển iOS với Kiwi" thử-ios lái xe phát triển
Tôi sử dụng SimpleUnitTest hoạt động với libs iPhone và iPad.
http://cbess.blogspot.com/2010/05/simple-iphone-ipad-unit-test.html
Nó đi kèm với một mẫu Xcode thử nghiệm đơn vị để dễ dàng thêm một lớp thử nghiệm đơn vị. Kết thúc tốt đẹp GTM.
Bạn có thể thả nó vào một dự án đang hoạt động và bắt đầu thêm các bài kiểm tra đơn vị trong vòng 3 phút (hoặc ít hơn).