`
luliangok
  • 浏览: 816451 次
文章分类
社区版块
存档分类
最新评论

OCMock 测试类方法

 
阅读更多

OCMock 测试类方法

罗朝辉(http://blog.csdn.net/kesalin)

CC许可,转载请注明出处

使用 OCMock 进行 unit test 时,我们无法 stub 或 expect 类方法,那么又该怎样测试类方法呢?下面是一个解决办法:在测试类中的非类方法 wrap 一下类方法,然后测试 wrap 方法。

比如:Utilities 有个类方法:

比如:

我们在 UtilitiesTests 测试类中新建一个同样名称的测试函数,然后在该函数中转调 Utilities 的类方法,最后在 test 中对这个 wrap 函数进行测试:




分享到:
评论

相关推荐

    OCMock资源文件

    你可以在测试目标中导入OCMock库,并在测试类中创建和配置模拟对象。通过这种方式,你可以编写更加健壮和可靠的测试用例,确保代码质量。 7. 注意事项: - 在使用模拟对象时,要注意不要过度依赖模拟,这可能导致...

    OCMock 是模拟对象的 Objective-C 实现 .rar

    1. **导入 OCMock 库**:首先,在测试类中引入 OCMock 框架。 2. **创建模拟对象**:使用 OCMock 的 `OCMockObject` 类或者 `+[OCMProtocolMock mockForProtocol:]` 方法创建模拟对象。 3. **配置模拟对象**:定义...

    ocmock-master.zip

    在进行iOS或macOS应用的单元测试时,我们常常需要模拟(mock)某些对象的行为,以便于隔离测试目标,这就是OCMock框架的作用。OCMock是一个强大的、易于使用的模拟框架,它允许开发者创建模拟对象来代替真实的对象,...

    软件测试-iOS自动化单元测试示例.zip

    在测试类中,为每个方法添加`test`前缀,例如`testExample`,并在此方法内编写测试代码。 3. **断言与测试结果**:XCTest提供了多种断言方法,如`XCTAssertTrue`、`XCTAssertFalse`、`XCTAssertEqual`等,用于判断...

    iOS单元测试实例

    2. 测试类:通常以`Test`后缀命名,如`CalculatorTests.m`或`CalculationTests.swift`,这些类包含了实际的测试方法,每一个方法测试一个特定的功能或条件。 3. 测试框架:苹果的XCTest是iOS单元测试的标准框架,它...

    xcode单元测试中文版

    接着,Xcode会自动生成一个包含测试类的模板,这个类继承自XCTestCase,并且通常会有一个以“test”开头的方法,这个方法就是你的第一个单元测试。 在Xcode的“Product”菜单下,选择“Test”可以运行所有的测试。...

    ocmock:模拟Objective-C的对象

    - **单元测试**:在测试单个类的方法时,使用OCMock替换其依赖,以便控制外部因素对测试的影响。 - **隔离复杂逻辑**:通过模拟对象,可以避免处理复杂的系统集成问题,专注于当前模块的功能验证。 - **异常测试**:...

    iOS单元测试最佳实践

    2. **定义测试类**:在测试工程中定义一个名为NoteDAOTests的测试类,继承自GHTestCase。 3. **设置测试环境**: - 初始化日期格式器。 - 获取NoteDAO的共享实例。 - 设置测试用的数据(日期和内容)。 4. **编写...

    美团酒旅客户端自动化测试实践.pdf

    在测试过程中,还会使用Mockito进行静态插桩,处理静态方法和final类,以及替换App持有对象,以实现对特定页面或应用的控制。 在规划和落地阶段,需要考虑如何将这些技术方案整合到日常开发流程中,建立一个可追溯...

    RuntimeTestDemo:运行时测试演示

    8. **元类(Meta-Class)**:元类用于描述类本身,测试时要确保元类的方法和属性也能正常工作。 9. **实例变量(Instance Variables)**:在运行时,可以访问和修改对象的实例变量,测试时需验证其值的正确性和安全...

    TestNetworking:使用 Mock 和 DI 技术测试网络

    例如,我们可以在初始化网络请求类时传入一个Mock网络服务对象,然后在测试过程中,这个Mock对象会返回预设的响应,帮助我们验证类的逻辑处理是否正确。 TestNetworking项目可能包含了以下结构: 1. `...

    iOS开发规范

    - **单元测试**:推荐使用`XCTest`配合`OCMock`进行单元测试。 - **测试框架演进**:后期可能会演进到使用`KIWI`。 - **敏捷开发**:推荐使用TDD(Test Driven Development,测试驱动开发)和BDD(Behavior Driven ...

    《iOS6开发指南》精彩书摘

    16. **基于测试驱动的iOS开发**:介绍了测试驱动开发流程和单元测试框架,如OCUnit、GHUnit和OCMock。 17. **性能优化**:介绍了iOS应用性能优化方法,包括内存优化、资源文件优化、延迟加载、多线程和程序编译参数...

    CalendarControl

    10. **单元测试和持续集成**:为了确保代码的质量,你可能需要编写单元测试,使用XCTest或第三方框架如OCMock。同时,利用Jenkins、Travis CI等工具实现持续集成,确保每次代码更改后都能快速发现问题。 以上就是...

    高仿淘宝/京东详情页

    8. **测试框架**:可能包括XCTest、OCMock等,用于编写和执行单元测试和集成测试。 9. **版本控制**:如Git,用于代码管理和协作。 10. **持续集成/持续部署(CI/CD)**:可能使用Jenkins、Travis CI等工具,自动化...

    模拟鸟:Swift的便捷模拟框架

    Mockingbird是一个Swift模拟框架,可让您丢弃手写的模拟并编写干净,可读的测试。 Swift语言功能的广泛覆盖 在一行代码中模拟类和协议 支持泛型,继承,静态成员,嵌套类,类型别名等。 与Xcode项目无缝集成 自动...

Global site tag (gtag.js) - Google Analytics