首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用 pod lib create 创建库

如果您想要一个示例项目pod try MyLib或需要让您的库的测试在应用程序内运行(交互测试,自定义字体等),那么您应该说是。一个好的指标是 这个Pod应该包含截图吗?...选择测试框架 你应该测试你的库。测试可确保使用您库的人员的稳定性。在开源库中,这意味着人们可以在知道他们没有打破隐含期望的情况下进行更改。...我们建议使用测试框架,而不是依赖Apple的XCTest,但包括在内。在Objective-C中,我们选择了两个流行的测试框架; Specta / Expecta和Kiwi。...基于视图的测试 根据您所构建的内容库,你可能会发现快照基于测试是验证结果的聪明的方式在你的角度不同的 动作 。...添加Travis CI 该模板包含一个.travis.yml文件,该文件将运行项目中包含的默认测试。如果您在GitHub上有一个开源仓库,请在Travis CI 上打开您的个人资料并打开该库。 ?

3.8K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【IOS开发高级系列】CocoaPods使用总结专题

    运行结果:         补充:         1、CocoaPods的基本安装及使用都详细的说明了,但还有一些补充,当需要同时导入多个第三方时候怎么办 ?         ...淘宝ruby地址:https://ruby.taobao.org/ 感谢@HeminWon 的指正 2 场景1:利用CocoaPods在项目中导入AFNetworking类库 2.1 搜索第三方库         ...,你以后就需用新产生的UAAppReviewManagerExample.xcworkspace来运行这个Example代码了。         ...5.5 注意的问题 5.5.1 新建工程时,需要使用git作为版本控制工具 5.5.2 (XCTest.hfile not found)cocoapods引入Specta库之后报XCTest.h文件无法找到...必须放在.m文件里面,不然会引起与HJCommonLib.h文件的循环引用 const NSArray *___HJResultStatusType; 6 参考链接 (Good)CocoaPods安装和使用教程

    1.6K81

    基于 KIF 的 iOS UI 自动化测试和持续集成

    首先,使用的语言和框架决定了测试人员的持续性学习成本,iOS 测试人员对 Object C 和 XCTest 熟悉和掌握程度高,不需要消耗额外的学习成本,人员更替时的接手成本也相对较低;其次,测试框架支持的...和 XCTest 一样,我们首先应该在工程项目中创建基于 Cocoa Touch Testing Bundle 模板的 Target ,并确保创建的 Target 的属性有如下设置: “Build Phases...持续集成的意义与 UI 自动化测试的用例选择 持续集成是一个自动化的周期性的集成测试过程,从检出代码、编译构建、运行测试、结果记录、测试统计等都是自动完成的,无需人工干预。...我们希望在代码改动发生的时候就做到尽早发现代码改动带来的问题,所以使用 “Poll SCM” 在当代码仓库有新的 pull request 的时候触发相应 Job 完成构建,Job 的执行结果作为这个...如下图是 Job 中测试报告的代码覆盖率和测试结果的示例,通过下面的图表,我们可以清晰地看到测试是否通过,检查代码的测试覆盖范围,并对比历史的测试结果和代码覆盖率来推断和定位问题。 ?

    2.3K60

    IOS开发问题索引(七)

    //[btn setFont: [UIFont systemFontSize: 14.0]]; //这种可以用来设置字体的大小,但是可能会在将来的SDK版本中去除改方法 //应该使用 btn.titleLabel.font...举个例子,比如杂志、新闻、地图应用使用的数据库缓存文件和可下载内容应该保存到这个文件夹。 3.tmp: 只是临时使用的数据应该保存到 /tmp 文件夹。...里运行,在控制台把resourcePath打印出来的时候,会发现,路径里没有resource这个文件夹。...->isa 这个弃用的函数,网上查大部分的资料都说要使用object_getClass 和object_setClass来更正。...20 (XCTest.hfile not found)cocoapods引入Specta库之后报XCTest.h文件无法找到 1、点击Pods - TARGETS -[Pods-你的项目名Tests-Specta

    1.1K40

    基于XCTest的iOS自动化测试

    Xcode在创建工程时,会默认使用XCTest,并且默认创建了Unit Test(单元测试)和 UI Test(界面测试)两个Target,其中Unit Test主要用于测试代码的大部分基本功能,比如绝大多数...UI Test一般会考虑到用户的交互流程,模拟用户的交互操作,利用XCTest的UI记录特性来获取界面上的一些列视图元素和操作事件,然后在测试方法中触发事件。...5)断言 XCTest使用断言来判断一个测试用例成功或者失败。...2)测试结果 测试导航栏首行整个test文件右侧数据说明跑了多个test,测试失败个数多少,每个测试用例右侧的绿色对勾和红色叉号分别表示测试通过和测试失败。 ? ?...接下来就是针对测试结果进行对应的处理了~ 结束语 本文小编主要分享了XCTest框架的自动化测试是什么,怎么执行,测试结果代码覆盖率等内容,除此之外,XCTest还可以在服务端进行持续集成自动运行测试

    3.8K21

    Kiwi上手体验

    听说Kiwi,是来自于我在进行模块化构建的时候,执行 pod lib create xxxPods 的时候会有一个问题: Which testing frameworks will you use?...BDD BDD提倡的是通过将测试语句转换为类似自然语言的描述,开发人员可以使用更符合大众语言的习惯来书写测试,这样不论在项目交接/交付,或者之后自己修改时,都可以顺利很多。...如果说作为开发者的我们日常工作是写代码,那么BDD其实就是在讲故事。一个典型的BDD的测试用例包活完整的三段式上下文,测试大多可以翻译为Given..When..Then 的格式,读起来轻松惬意。...结合紧密,官方创建Pods后直接支持生成Kiwi的测试项目; 其次,由于其BDD的特性,语法可读性很强; 最后,由于是基于XCTest来开发的,对XCode的支持很好,直接通过XCode进行测试回归或调试即可...和Jenkins的结合 Todo 不过因为起支持XCode级别的调试和运行,所以即便无法Jenkins也不是很有所谓了。

    47020

    iOS之深入解析Xcode 13正式版发布的40个新特性

    ALLOW_TARGET_PLATFORM_SPECIALIZATION 设置为 YES,将框架配置为在单个构建操作中为多个平台构建; 可以在构建阶段使用平台过滤器,并为所有支持的平台定位依赖项; 当发生构建失败时...,xcodebuild 现在会在构建日志末尾的摘要中显示每个失败命令的目标和项目名称; 当脚本阶段或自定义构建规则声明不属于构建输入的一部分,且未声明为构建中任何其他任务的输出依赖项的输入依赖项时,构建系统会发出警告...二十四、StoreKit Xcode 中的 StoreKit 测试支持对使用 StoreKit 新的现代基于 Swift 的 API 构建的应用内购买进行全面测试。...性能测试现在支持在 macOS 中为动画 os_signpost 间隔使用 XCTOSSignpostMetric 时收集故障指标; XCTest 现在支持测试重复,且有三种测试重复模式; 新的透明屏幕覆盖显示自动化运行时的活动...Transparency 框架重置受保护资源“用户跟踪”的授权状态; 用 Swift 编写的测试方法可能会被标记为异步或异步抛出,以允许调用和等待来自异步 API 的结果,作为 Swift 并发语言功能的一部分

    8.8K40

    iOS单元测试的那些事儿

    ,当两个表达式结果相等时测试失败 使用equal方法 XCTAssertNotEqualObjects(expression1, expression2, ...) // 相等断言,当两个表达式结果不相等时测试失败...六 异步函数的测试 前面我们演示的测试用例所执行的逻辑都是同步的,但在实际的项目中,异步的操作很多,XCTest框架中也提供了异步逻辑的测试方式。...这时我们可以修改下功能函数,在函数内返回操作成功或失败的结果,测试用例使用此结果来作为是否通过的标准。 八 XCTest框架中的UI测试 相比逻辑功能测试,UI测试通常会麻烦一些。...XCTest框架中也集成了UI测试相关的接口。通常在编写测试用例时,我们会将功能测试和UI测试分开编写。...九 设备性能相关数据测试 前面我们有提到一个冷启动时间性能测试的配置项:XCTApplicationLaunchMetric。除此之外,XCTest框架中也默认提供了如CPU,内存等设备性能测试配置。

    1.2K20

    Swift 单元测试入门

    单元测试在 Xcode 中有它们的 target,并使用 XCTest 框架编写。...在 Swift 中编写单元测试 有多种方法可以测试相同的结果,但是当测试失败时它并不总是给出相同的反馈。以下提示可帮助您编写测试,通过从详细的失败消息中获益,帮助您更快地解决失败的测试。...例如,在测试 JSON 响应的解码时: func testDecoding() throws { /// 当数据初始值设定项抛出错误时,测试将失败。...运行测试组合 使用 CTRL 或 SHIFT 选择要运行的测试,右键单击并选择“Run X Test Methods”。...覆盖率达到 100% 可能会很耗时,而收益并不总是那么显著。并且达到100%,也意味着可能需要付出很大的努力。 最重要的是,100% 的覆盖率可能会产生误导。

    2.7K40

    如何使用Swift Package Manager那么,让我门开始吧

    Swift Package Manager 是苹果推出的用于创建使用swift的库和可执行程序的工具。 SwiftPM有什么作用?...能够通过命令快速创建library或者可执行的swift程序,能够跨平台使用,能够使开发出来的项目能够在不同平台上运行。 SwiftPM有哪些局限?...1、目前只能用来写跨平台的项目,如swift服务端开发,现在的Vapor、Perfect等服务端的web框架均使用SwiftPM来构建和管理依赖。...编译后的目录结构 可以看到在x86_64-apple-macosx10.10/debug文件夹里有一个HelloExcutable的可执行文件。...5、直接运行HelloExcutable $ .build/x86_64-apple-macosx10.10/debug/HelloExcutable 6、多个xxx.swift的情况: 在HelloExcutable

    2.4K51

    iOS 优化 - 启动优化

    我们在实际测量启动时间时应该是测量温启动类型,主要是冷启动状态不好统一,因为不好确定一些系统端服务的运行状态或者一些缓存的使用。...,而随机分配的 ASLR 是 0x1f00,如果想访问 test 方法,其内存地址(即真实地址)变为 ASLR+ 偏移值 = 运行时确定的内存地址(即 0x1f00+0x0001 = 0x1f01)。...XCTest 在 UITest 内 Xcode 自动帮我们生成好了用于测试 App 启动的测试用例: XCTest 此测试会启动你的应用 6 次,并且仅使用最后 5 个度量值。...扩展 在 iOS 15 及更高版本中,系统可能会根据设备条件预热您的应用程序 — 启动未运行的应用程序进程以减少用户在应用程序可用之前等待的时间。...CocoaPods 早期版本管理 Swift 项目时,只能以动态库的形式去引入三方、二方库; 项目中有App Extension,可以利用动态库一定范围内共享的特性去减少包体积 ...

    4.1K20

    【Flutter 混合开发】添加 Flutter 到 iOS

    .ios 是隐藏目录,可以单独运行Flutter module,测试此模块的功能,iOS代码添加到现有应用程序的项目或插件中,而不是添加到模块的.ios /目录中。...在新机器上构建模块之前,请先在my_flutter目录中运行flutter pub get来重新生成.ios /目录,然后再使用Flutter模块构建iOS项目。...应用程序无法在 Release 模式下的模拟器上运行,因为Flutter尚不支持为Dart代码提前输出x86 / x86_64二进制(AOT)二进制文件。...使用CocoaPods和已安装的Flutter SDK 此方法需要所有的相关开发的人员安装 Flutter 环境。 假设现有应用程序和Flutter模块位于同级目录中。...如果团队成员无法在本地安装Flutter SDK和CocoaPods,或者您不想在现有应用程序中将CocoaPods用作依赖项管理器,则可以使用此方式。

    3.2K40

    利用 JenKins 持续集成 iOS 项目时遇到的问题

    实践应该包含3个基本模块,一个可以自动构建的过程,自动编译代码,可以自动分发,部署和测试。 一个代码仓库,SVN或者Git。最后一个是一个持续集成的服务器。...Provisioning Profiles Management”和“FTP publisher plugin”这两项,然后安装。...如图所示, 其中,Keychains中的Identities输入项,对应的是刚才点击Upload后钥匙串中的测试证书名称,发布证书名称(需要输入证书名称)。...构建(构建步骤) 点击”增加构建步骤”选项,因为我使用的是CocoaPods管理的第三方,打包前先运行pod install –verbose –no-repo-update安装下第三方库。...如果项目使用了cocoaPods,需要配置Advanced Xcode build options,设置 Xcode Schema File,设为Xcode项目中的schema Xcode Workspace

    2.6K20

    iOS开发笔记(七)

    正文 这次分享三个有意思的问题:二维码生成、Xcode8单元测试的问题、添加新字体。 二维码生成 iOS平台上的二维码生成有很多第三方库,也可以使用原生的方法,这里选用的是QREncoder。...先尝试非单元测试的raget,可以正常断点; 再尝试其他工程的单元测试,也可以正常断点; 猜测是,单元测试的工程设置存在问题; 仔细查找build setting,找到出问题的设置项: ?...还有其他可能,比如test.m的文件没有加入工程中;(在Build Phases的Compile Soucres可以看到是否添加,也可以通过打Log看是否执行) 2、头文件查找失败 通常是在单元测试中调用了某些第三方库的代码...Xcode的版本是** Version 8.3.1 (8E1000a)** 猜测是Xcode生成的XCTest Framework是动态库,被Xcodeembedded到项目中。...i386是32位模拟器(5和5s以下的机型) x86_64是64位模拟器(5s后面的机型) armv7/armv7s是32位真机 arm64是64位真机 coocachina上有更详细的介绍。

    1.4K90

    从预编译的角度理解Swift与Objective-C及混编机制

    本文从预编译的基础知识入手,由浅至深的介绍了 Objective-C 和 Swift 的工作机制,并通过这些机制来解释混编项目中使用到的技术和各种参数的作用,由此来指导开发者如何进行混编。...假设某个人没有遵守这种规则,那么在不同的引入顺序下,你可能会得到不同的结果,对于这种错误的排查,还是挺闹心的。不过,这还不是最闹心的,因为还有动态宏的存在,心塞 ing。...引入的内容形式:对于 X/X.h 和 X.h 这两种引入的内容形式,前者是说在对应的 Search Path 中,找到目录 A 并在 A 目录下查找 A.h,而后者是说在 Search Path 下查找...需要注意,映射表的键值并不是简单的文件名和绝对路径,它的内容会随着使用场景产生不同的变化,例如头文件引用是在 "..."...而这种行为,我想应该是大多数人并不想要的结果,所以一旦开启了 Use Header Map,再结合 CocoaPods 管理工程项目的模式,我们极有可能会产生一些误用私有头文件的情况,而这个问题的本质是

    2.2K31

    为什么我说写好测试很重要(二)

    XCTest   开发步骤   Xcode 自带的测试系统是 XCTest,使用简单。开发步骤如下:   在 Tests 目录下为被测的类创建一个继承自 XCTestCase 的测试类。   ...测试方法内部如果调用了其他类的方法,则在测试方法内部必须 Mock 一个外部对象,限制好返回值等。   在 XCTest 内难以使用 mock 或 stub,这些是测试中非常常见且重要的功能。  ...测试框架   1)Kiwi   BDD 框架里的 Kiwi 可圈可点。使用 CocoaPods 引入 pod 'Kiwi'。看下面的例子。   ...在 Xcode 中勾选 Include Unit Tests ,和 XCTest 搭配使用。   ...不能和 XCTest 继承。   Specta 也是一个 BDD 框架,基于 XCTest 开发,可以和 XCTest 模版集合使用。相比 Kiwi,Specta 轻量一些。

    41690

    Travis CI 教程:入门

    持续集成(通常缩写为 CI)是在提交更改时自动构建和运行测试的过程。 现在,Apple 有自己的 Xcode Bots 解决方案,它可以在 OS X Server 上运行。...但 Apple 的解决方案的缺点是你,是的,你 必须管理整个过程。您必须在服务器上设置和维护 OS X Server 和 Xcode 版本,找出用于查看结果的访问控制,以及处理配置和签名问题。...现在您已经知道测试正在通过,您已准备好让 GitHub 和 Travis 设置为自动运行它们。 设置 Git 和 GitHub 首先,您将使用入门项目中的文件创建本地 Git 仓库。...单击 build Build#1 无法 获取失败构建的结果: ?...特别是如果您正在使用 KIF 运行 UI 测试,您可能会遇到这样的情况:构建机器的速度慢意味着您看到在真实设备上看不到的竞争条件,或者在您看不到的构建服务器上测试条纹本地。 .

    5.1K21
    领券