XCFit:具有Swift 3.1和Xcode 8.3支持的iOS完整堆栈BDD框架
XCFit是Xcode中的全栈iOS BDD框架。 XCFit设置带有框架代码和目录结构的Xcode模板,这有助于我们开始使用BDD,而XCFit Swift Framework提供了许多预定义的BDD样式步骤,从而可以用更少的代码来实现自动化BDD。 您可以在Github上阅读XCFit的详细信息。 XCFit 4.0已发布,具有很多功能,简短的发行说明可在GitHub上获得。 让我们详细了解XCFit 4的新功能。
XCFit 4.0
XCFit 4.0是主要版本,对Swift框架进行了许多改进。 XCFit 4 .0具有以下主要更改。
- 支持Swift 3.1和Xcode 8.3
- 添加了对带有集成Cucumberish库的XCFit框架的迦太基支持。
- 为XCFit和Cucumberish添加了许多预定义步骤,以便我们可以将其直接用于我们的项目中。
- 通过将XCFit和Fitnesse模板分别放在不同的命令中来改进Xcode模板。
- 在Youtube上使用Video Demo改进了XCFit的README和Web页面文档。
- 让我们简要地看到新的变化。
Swift 3.1支持
苹果刚刚发布了Swift-3.1-dev快照,其中对XCTest框架进行了一些有用的更改。 您可以在DZone博客上的XCUITests中阅读有关新添加的类的信息。 基本上,XCUITest现在支持异步测试,并能够使用新类控制Siri。 苹果已经添加了XCWaiter类,以使XCFit能够更好地等待服务员。
XCFit 4.0是完全基于Swift 3.1构建的,您可以在Cocoapods上看到Swift版本。 这个想法是从XCFt 3.1开始完全支持XCFit Swift框架。 如果尚未安装Swift 3.1,则可能需要等到Swift 3.1公开发行版才能使用XCFit 4.0的新功能。
迦太基支持
XCFit Swift框架现在可以使用Carthage构建,以前它仅与Cocoapods一起使用,但是XCFit 4.0也为Carthage添加了支持。 XCFit依赖于Cucumberish框架,因此我们可以通过拉XCFit来获得这两个框架。 只需在项目根目录中的Cartfile中添加以下内容
Github“ Shashikant86 / XCFit”
现在,我们可以使用以下命令下载并构建框架
$ carthage更新—平台iOS
现在,我们可以手动设置XCFit和Cucumberish目标。
设置XCFit Swift框架
上面的命令将使用已构建的框架创建“迦太基”目录。 我们需要手动将其拖放到XCUIPoMTest的目标构建设置中。 在应用程序目标的“常规”设置选项卡上的“链接的框架和库”部分中,将要使用的每个框架从磁盘上的Carthage / Build文件夹中拖放。 在应用程序目标的“构建阶段”设置选项卡上,单击“ +”图标,然后选择“新建运行脚本阶段”。 创建一个运行脚本,在其中指定外壳程序(例如:bin / sh),然后将以下内容添加到外壳程序下方的脚本区域:
/ usr / local / bin / carthage复制框架
并将路径添加到要在“输入文件”下使用的框架,例如:
$(SRCROOT)/Carthage/Build/iOS/XCFit.framework
它应该像这样:
设置黄瓜框架
我们也可以设置黄瓜。 现在,我们需要在Cucumberish目标的构建阶段中手动拖放框架。
- 在最适中目标的构建阶段中,选择“链接二进制文件与库”,然后从Carthage / Build / iOS目录中拖动Cucumberish.framework。 我们需要添加新的“复制文件”阶段,并选择目标作为“框架”,然后从以下位置添加黄瓜框架
- 迦太基/建造/ iOS
- 目录。 出现提示时,选择“创建组”和“如果需要复制”。 整个迦太基设置看起来像这样
预定义的BDD步骤
XCFit4.0具有针对XCFit Swift框架和Cucumberish框架的预定义步骤。
- XCFit预定义的BDD样式步骤
- 黄瓜预定义的BDD样式步骤
建议使用您自己的步骤,因为预定义的步骤可能无法很好地满足您的项目需求。 预定义的步骤为您提供了有关如何实现自己的步骤的指南,但是您可以在有意义的地方使用预定义的步骤,以避免重复。 导入XCFit并将测试类扩展到XCFit框架后,预定义的步骤将直接在Xcode中可用。
有一些预定义的黄瓜步骤可直接使用,而无需在步骤定义中实施。 您可以在此处查看步骤列表。 您已经在“ CommonStepDefinitions.swift”文件中包含了这些步骤。 您可以根据项目需要修改步骤或添加自己的步骤。
从XCFit框架扩展BDD步骤
XCFit有一个给定的ILaunchedApplication()步骤,您对措辞不满意。 您可以轻松编写和扩展以及类似的步骤:
XCFit扩展名{
func namedMyiOSApplicationHasBeenLaunched(){
XCUIApplication()。launch()
}
}
现在,您可以在“测试”目标内的任何位置使用自己的给定MyiOSApplicationHasBeenLaunched()步骤。
扩展/更改黄瓜BDD步骤
用于设置Cucumberish的XCFit模板在“ CommonStepDefinitions.swift”文件中具有所有预定义的Cucumberish BDD步骤的Swift代码。 您只需要相应地添加自己的步骤或更改现有步骤即可。
更新了自述文件和视频演示
XCFit 4.0改进了Github自述文件及其Web页面上的文档。 您可以查看有关使用XCFit框架的逐步指南。 还有视频演示o Youtube,您可以在这里观看
希望您喜欢XCFit 4.0
像XCBlog的 XCTEQ 发布的帖子一样 ? 您可能还喜欢我们的一些服务,例如访客博客或Mobile DevOps(CI / CD)或测试自动化。 在 Github 上 搜索我们的 服务 ,开源项目, 或者在 Twitter , Facebook , Youtube 和 LinkedIn 上关注我们 。 下载我们的 XCBlog iOS应用程序以离线阅读博客。
X CTEQ 是一家专门从事基于Mobile DevOps,CI / CD,Mobile,AI / ML的测试自动化Checkout XCTEQ产品和服务的公司, 网址 为 http://www.xcteq.co.uk 或写信给我们info@xcteq.co。英国..