Базовая реализация 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

Также в качестве альтернативы установка системы сборки на "наследие" заставляла ее работать, но у нее был слишком большой потенциал, чтобы ошибиться где-то еще в будущем

Другие вопросы по тегам