从一个类中使用 xctest 框架运行测试类
Posted
技术标签:
【中文标题】从一个类中使用 xctest 框架运行测试类【英文标题】:run test classes using xctest framework from a class 【发布时间】:2016-06-09 14:48:22 【问题描述】:我遇到了一个问题。我想为我的应用程序做一个 ui 测试。
我已经编写了六个测试类,其中包括我的测试用例。
我可以使用
运行我的测试用例"command U" or the clicking in the run button.
但我不想这样做。
我想使用代码运行我的测试类,我的意思是使用
xctest because after complete my execution, i have to do another task.
谁能举个例子,我如何使用类文件中的 xctest 编码运行我的测试类。
我不想使用 shell 脚本或 jenkins,我想要使用 xctest 框架。
【问题讨论】:
后续任务是什么? @JonReid ,完成我的任务后,我必须发送电子邮件和其他任务 【参考方案1】:使用 xcodebuild 运行测试 xcodebuild 命令行工具就像 Xcode IDE 一样驱动测试。使用动作测试运行 xcodebuild 并使用 -destination 参数指定不同的目标。例如,要在本地 OS X “My Mac 64 Bit”上测试 MyApp,请使用以下命令指定目标和架构:
> xcodebuild test -project MyAppProject.xcodeproj -scheme MyApp -destination 'platform=OS X,arch=x86_64'
如果您插入了支持开发的设备,则可以通过名称或 ID 调用它们。例如,如果您连接了一个名为“Development iPod touch”的 iPod touch,您想在上面测试您的代码,您可以使用以下命令:
> xcodebuild test -project MyAppProject.xcodeproj -scheme MyApp -destination 'platform=ios,name=Development iPod touch'
测试也可以在模拟器中运行。使用模拟器轻松针对不同的外形尺寸、操作系统和操作系统版本。模拟器目标可以通过名称或 ID 指定。例如:
> xcodebuild test -project MyAppProject.xcodeproj -scheme MyApp -destination 'platform=Simulator,name=iPhone,OS=8.1'
Source
【讨论】:
我如何在我的 ios 应用中做到这一点? 实际上这可以运行 xcode build 命令以使用 swift 在 ios 项目中运行吗? 是的,可以运行 xcodebuild 来运行 swift 项目。只需打开终端,转到项目文件夹,运行上面的命令。【参考方案2】:-
编辑您的 Xcode 方案。
点击“测试”旁边的三角显示以显示更多选项。
选择“后操作”
单击“+”以添加要在测试完成后运行的任何操作。
如您所见,您的选择是运行脚本或发送简单的电子邮件。有关配置操作的更多信息,请参阅https://michele.io/the-project-file-part-2/
【讨论】:
感谢您的帮助@Jon Reid 到目前为止我已经做到了,但是我在附加文件和添加多个用户方面遇到了问题,这就是我尝试另一种方式的原因。如果我在方案中添加多个用户,例如:user1@abc.com, user2@abc.com 它不会发送电子邮件。 你能就这些问题提供任何建议或链接吗?以上是关于从一个类中使用 xctest 框架运行测试类的主要内容,如果未能解决你的问题,请参考以下文章