Aplikasi saya terdiri dari banyak proyek (kerangka kerja), satu untuk setiap fitur utama dan kerangka kerja umum dengan segala macam hal yang perlu saya akses di banyak fitur saya.
Saya menggunakan Manajer Paket Swift Xcode 11 untuk menambahkan dependensi.
Kerangka umum berisi ketergantungan RxSwift, yang saya gunakan di seluruh proyek.
Saya menghadapi masalah ketika saya mencoba menggunakan RxTest di salah satu kerangka kerja fitur saya.
Jika saya menambahkan RxTest via SPM ke target tes secara langsung dan menjalankan tes, saya dapatkan
gagal membuat superclass 'nama kelas' dari nama yang rusak 'nama kelas lain'
dan banyak
'Nama kelas' kelas diimplementasikan di 'jalur kerangka kerja umum' dan 'jalur target pengujian'
di mana semua kelas ini terkait Rx. Kesalahan 'gagal untuk demangle' membuat crash tes dan hanya terjadi ketika saya mencoba menginisialisasi kelas RxTest.
Jika saya menambahkan RxTest ke kerangka umum, tes berjalan dengan baik, tetapi ketika saya menjalankan aplikasi, saya mengerti
dyld: Library tidak dimuat: @ rpath / XCTest.framework / XCTest
Yang masuk akal, karena saya menambahkan kerangka uji ke kerangka non-tes, dan itu bukan sesuatu yang baik untuk dilakukan.
Jadi pada dasarnya, saya tidak bisa mendapatkan konfigurasi tempat tes dan aplikasi berjalan dengan baik. Baik aplikasi berjalan atau tes berjalan.
Bagaimana saya bisa membuatnya bekerja? Apakah ada cara untuk memasukkan RxTest pada kerangka kerja umum hanya ketika saya membangunnya pada target uji? Atau haruskah RxTest hanya disertakan pada target pengujian dan saya kehilangan beberapa konfigurasi?