Базовая реализация SwiftMonkey завершается с ошибкой "Bundle не может быть загружен"
Я пытался добавить SwiftMonkey-Target в свой текущий проект в течение нескольких часов, и, похоже, ничего не работает.
Пример проекта от https://github.com/zalando/SwiftMonkey работает. Все настроено одинаково / По инструкции.
- Работает на XCode 10.1
- Установленные блоки (до базового уровня iOS 11.0)
- SwiftMonkeyPaws, импортированные в AppDelegate, лапы, назначенные при запуске
- Новый UI-Test Deploy-Target, который вызывает пример testMonkey()- функция
- Схема установлена только на "тест" (не запущена), как в примере проекта
- Схема Deploy-Target установлена на 11,0
Это тест-код (идентичный коду-примеру):
import XCTest
import SwiftMonkey
class AdviceAppMonkeyTests: XCTestCase {
override func setUp() {
super.setUp()
XCUIApplication().launch()
}
override func tearDown() {
super.tearDown()
}
func testMonkey() {
let application = XCUIApplication()
_ = application.descendants(matching: .any).element(boundBy: 0).frame
let monkey = Monkey(frame: application.frame)
monkey.addDefaultXCTestPrivateActions()
monkey.addDefaultUIAutomationActions()
monkey.addXCTestTapAlertAction(interval: 100, application: application)
monkey.monkeyAround(forDuration: 10)
}
}
И это мой подфайл:
platform :ios, '11.0'
use_frameworks!
def advice_pods
pod 'SwiftyJSON'
pod 'Firebase/Core'
pod 'Firebase/AdMob'
pod 'SwiftLint'
end
target 'AdviceApp' do
advice_pods
pod 'SwiftMonkeyPaws', '~> 2.1.0'
end
target 'Daily Advice' do
advice_pods
end
target 'AdviceAppTests' do
advice_pods
end
target 'AdviceAppMonkeyTests' do
advice_pods
pod 'SwiftMonkey', '~> 2.1.0'
end
Когда я запускаю тест, я получаю предупреждение "тест не пройден", а также
2019-01-07 10:15:54.790962+0100 AdviceAppMonkeyTests-Runner[14731:110840] Не удалось загрузить пакет "AdviceAppMonkeyTests", поскольку он поврежден или отсутствует необходимый ресурс. Попробуйте переустановить комплект. 2019-01-07 10:15:54.791073+0100 AdviceAppMonkeyTests-Runner[14731:110840] (dlopen_preflight(/Users/matthias.zarzecki/Library/Developer/Xcode/DerivedData/AdviceApp-hantxpruajwehhp/Dj/hl/hl_pl_px_px_pl/) AdviceAppMonkeyTests-Runner.app/PlugIns/AdviceAppMonkeyTests.xctest/AdviceAppMonkeyTests): библиотека не загружены: @ RPATH / libswiftSwiftOnoneSupport.dylib Реферировано от: /Users/matthias.zarzecki/Library/Developer/Xcode/DerivedData/AdviceApp-hantxpruajwefgbjvzwhvlvwhmrh/Build/Products /Debug-iphonesimulator/AdviceAppMonkeyTests-Runner.app/PlugIns/AdviceAppMonkeyTests.xctest/Frameworks/SwiftMonkey.framework/SwiftMonkey Причина: изображение не найдено)
У вас есть идеи, что я могу попробовать?
1 ответ
Я работал с создателями несколько дней, чтобы решить эту проблему, и мы поняли это:)
Все подробности здесь: https://github.com/zalando/SwiftMonkey/issues/71
TLDR: use_frameworks должен входить только в целевые модули основной цели
platform :ios, '11.0'
target 'AdviceApp' do
use_frameworks!
pod 'SwiftyJSON'
pod 'Firebase/Core'
pod 'Firebase/AdMob'
pod 'SwiftLint'
pod 'SwiftMonkeyPaws'
end
target 'AdviceAppMonkeyTests' do
pod 'SwiftMonkey', '~> 2.1.0'
pod 'SwiftLint'
end
Также в качестве альтернативы установка системы сборки на "наследие" заставляла ее работать, но у нее был слишком большой потенциал, чтобы ошибиться где-то еще в будущем