如何解决如何测试使用UIKit的Swift包?
我最近创建了我的第一个Swift软件包。它目前仅在iOS中使用,如果可以在其他任何地方使用,则可能可以在tvOS上使用,
我无法使用UIKit。我在这里看到了这张纸条,这确实有助于解决我的问题: https://stackoverflow.com/a/58684636/1435520
我使用(上面已经提到)的命令是这样的:
swift build -Xswiftc "-sdk" -Xswiftc "`xcrun --sdk iphonesimulator --show-sdk-path`" -Xswiftc "-target" -Xswiftc "x86_64-apple-ios13.0-simulator"
但是,我真的很想进行单元测试。使用与swift test...
相同的参数运行swift build
。但这给了我一个新的错误:
error: module 'XCTest' was created for incompatible target x86_64-apple-macos10.14
所以,我想我只是想知道是否有可能这样做。就像,我如何创建一个使用UIKit的Swift程序包,并对其进行测试?
解决方法
我一直在使用命令xcodebuild
作为详细的in this forum post,它还需要您生成.xcodeproj
:
swift package generate-xcodeproj
xcodebuild build -sdk iphoneos -scheme 'MyPackage-Package'
xcodebuild test -destination 'name=iPhone 11' -scheme 'MyPackage-Package'
但是,如果您使用的是SPM资源,则会遇到我在这里详细介绍的问题:https://bugs.swift.org/browse/SR-13773
,我试图在 CI 上构建和测试我的内部包,但对我没有任何作用,并且将来会弃用生成 ssl-server-truststore
。
对我有用的是通过执行此操作而将目标指定为 macOS 10.15:
mydomain.com.pem
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。