Tôi cần kiểm tra đơn vị (XCTest
) một số phương pháp của tôi bao gồm tham chiếu đến các mô hình CoreData.swift - Kiểm tra đơn vị Mô hình CoreData (+ MagicalRecord) kích hoạt EXC_BAD_ACCESS
Các dòng sau thực hiện một cách chính xác:
var airport: AnyObject! = Airport.MR_createEntity()
(lldb) po airport <Airport: 0x7fcf54216940> (entity: Airport; id: 0x7fcf54216a20 <x-coredata:///Airport/t1D3D08DA-70F9-4DA0-9487-BD6047EE93692> ; data: {
open = nil;
shortName = nil;
visible = nil; })
trong khi dòng sau gây nên một EXC_BAD_ACCESS
:
var airport2: Airport = Airport.MR_createEntity() as! Airport
(lldb) po airport2
error: Execution was interrupted, reason: EXC_BAD_ACCESS (code=1, address=0x0).
The process has been returned to the state before expression evaluation.
Không có dấu hiệu của lỗi này với mục tiêu chủ yếu của tôi. Cấu hình là: đối tượng mô hình trong cả hai mục tiêu, lớp được đặt trước bởi @objc(MyModel)
, không có không gian tên trong mô hình của lớp học trong
Bất kỳ ý tưởng gì đang xảy ra ở đây?
Bạn đã đánh dấu phương pháp và thuộc tính của mình là công khai trong lớp Sân bay?Kiểm soát truy cập Swift có thể là vấn đề – railwayparade
Chỉ cần thử, kết quả tương tự: ( – Yaman
Tôi đã kết thúc việc tạo các đối tượng theo cách thủ công mà không cần viết tắt MR để chèn ... –