测试运行程序无法加载测试包

时间:2019-02-26 12:20:26

标签: ios xcode realm cocoapods xctest

我正在开发可可触摸框架,并使用CocoaPods导入“ RealmSwift”。项目构建成功,但是测试无法加载。 我收到以下错误:

  

xctest(97035)遇到错误(早期意外退出,运行   从未完成引导-不会尝试重新启动。   (潜在错误:测试运行程序无法加载测试包。   由于某些其他原因(例如问题),无法加载可执行文件   与它所依赖的库或代码签名/权利   不匹配。)

崩溃日志:

2019-02-27 17:35:44.197599+0400 xctest[12408:121075] The bundle “MyFrameworkTests” couldn’t be loaded because it is damaged or missing necessary resources. Try reinstalling the bundle.
2019-02-27 17:35:44.197835+0400 xctest[12408:121075] (dlopen_preflight(/Users/zakaria/Library/Developer/Xcode/DerivedData/MyFramework-cltpexonmtkefveximwygxbkkcrj/Build/Products/Debug-iphonesimulator/MyFrameworkTests.xctest/MyFrameworkTests): Library not loaded: @rpath/Realm.framework/Realm
  Referenced from: /Users/zakaria/Library/Developer/Xcode/DerivedData/MyFramework-cltpexonmtkefveximwygxbkkcrj/Build/Products/Debug-iphonesimulator/MyFrameworkTests.xctest/MyFrameworkTests
  Reason: image not found)

我尝试了所有可以在网上找到的解决方案,但无济于事。

值得一提的是,它可以在iOS项目中成功运行,该问题仅在可可触摸框架中出现。

我的Podfile如下:

target 'Framework' do
  use_frameworks!

  pod 'RealmSwift', '~> 3.13.1'

  target 'FrameworkTests' do
    inherit! :search_paths
  end

end

要复制的示例项目:https://github.com/r00tify/TestFramework

我正在使用Xcode版本:10.1 和CocoaPods版本:1.6.0

4 个答案:

答案 0 :(得分:4)

这是为我工作的podfile:

platform :ios, '11.0'

def shared
  use_frameworks!
  pod 'RealmSwift', '~> 3.18.0'
end

target 'Framework' do
  shared
end

target 'FrameworkTests' do
  shared
end

答案 1 :(得分:3)

转到“派生数据”文件夹中的测试日志:

/Users/USERNAME/Library/Developer/Xcode/DerivedData/APP_BUILD_FOLDER/Logs/Test

您将找到一个.xcresult测试结果包,右键单击它并选择Show package contents,然后在1_Test/Diagnostics文件夹中,找到测试的运行/崩溃日志。

此日志将为您提供失败的确切原因,如果您发现它后不知道如何处理,可以将其张贴在这里,我们将为您提供帮助:-)

没有此日志,实际上是任何问题的原因,因为这是通用的xcbuild失败消息。

答案 2 :(得分:0)

好的,谢谢您的日志,这应该可以解决您的问题:

target 'Framework' do
  use_frameworks!

  pod 'RealmSwift', '~> 3.13.1'

  target 'FrameworkTests' do
    inherit! :search_paths
    pod 'RealmSwift', '~> 3.13.1'
  end

end

您没有在日志中为测试目标安装RealmSwift库,仅针对您的应用安装了...Library not loaded: @rpath/Realm.framework/Realm referenced from...MyFrameworkTests.xctest... 库,

pod update

将上述代码添加到您的Podfile中并运行from guizero import App,Text,Picture import barcode from tester import tester ttf = tester("A") from barcode.writer import ImageWriter import time while True: raw_data = ttf.get_data() data1 = raw_data.decode(encoding='ISO-8859-1') data2= data1[5:14] app = App(title="Test Window") txt = Text(app,text=" Barcode will be displayed below") EAN = barcode.get_barcode_class('code39') ean = EAN(data2, writer=ImageWriter()) fullname = ean.save('/home/pi/Desktop/Barcode/code123') barcode=Picture(app,image="/home/pi/Desktop/Barcode/code123.png") time.sleep(2) app.display() :-)

答案 3 :(得分:0)

类似的修改对我有所帮助。

df['01-2015']  #all rows of January 2015

随时使用“ def” link