Ios 为XCTest模拟较低的OS版本

Ios 为XCTest模拟较低的OS版本,ios,swift,xcode,macos,xctest,Ios,Swift,Xcode,Macos,Xctest,我目前通过Swift Package Manager为我的Swift项目设置了一组测试,这些测试在我当前的操作系统(MacOS 10.13)上执行 我正在使用一些仅在此版本上可用的框架,如果操作系统版本较低,我使用不同的方法(仍然可用-无弃用),使用: if #available(iOS 11, macOS 10.13, *){ //Use new methods } else { //Use old methods } 我的问题是——在我的测试中,如何模拟较低版本的macOS

我目前通过Swift Package Manager为我的Swift项目设置了一组测试,这些测试在我当前的操作系统(MacOS 10.13)上执行

我正在使用一些仅在此版本上可用的框架,如果操作系统版本较低,我使用不同的方法(仍然可用-无弃用),使用:

if #available(iOS 11, macOS 10.13, *){
    //Use new methods
} else {
    //Use old methods
}
我的问题是——在我的测试中,如何模拟较低版本的macOS,以便测试在另一个块中执行的代码


我知道我可以让这个if语句调用两个单独的函数,我可以单独测试,我只是好奇是否有更好的方法来实现这一点?

您可以在运行测试之前选择一个旧的模拟器。在设备选择器上


如果您没有旧的emulator,您可以下载并安装一个表单设备管理器。

您知道是否有办法使用命令行
swift test
调用此功能吗?