我一直在尝试将SwiftMonkey-Target添加到当前项目中几个小时,但似乎没有任何效果。

https://github.com/zalando/SwiftMonkey中的Example-Project正在运行。一切都以相同的方式设置/根据说明进行。


在XCode 10.1上运行
已安装Pod(至iOS 11.0基本级别)
SwiftMonkeyPaws导入到AppDelegate,启动时分配了爪子
新的UI测试部署目标,调用示例testMonkey()函数
方案仅设置为“测试”(不运行),例如在example-project中
方案部署目标设置为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)
}
}


这是我的podfile:

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-hantxpruajwefgbjvzwhvlvwhmrh/Build/Products 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。
    原因:找不到图片)


您有什么想法可以尝试吗?

最佳答案

我与创作者合作了几天,以解决这个问题,我们发现了:)

此处的所有详细信息: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


另外,也可以将构建系统设置为“旧版”以使其正常运行,但是将来有很大的可能出错。

关于ios - 基本的SwiftMonkey实现失败,并显示“无法加载捆绑包”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54071733/

10-13 07:06