草庐IT

iphone - 从模拟方法崩溃返回 CGRect

我只是在练习OCMock,我这里面临的问题是我有一个名为foo的方法,它返回CGRect,这个方法是从另一个方法callFoo调用的。-(CGRect)foo{returnCGRectMake(10,10,10,10);}-(void)callFoo{CGRectrect=[selffoo];NSLog(@"%@",NSStringFromCGRect(rect));}我对callFoo方法的单元测试如下。-(void)test__callFoo__invokesWithMockingFoo{ViewController*sut=[[ViewControlleralloc]init];

ios - 如何在 ARC 中模拟 OCMock 中的 ** 参数

我的方法的参数之一是**错误,我的项目处于ARC模式。当为此方法编写stub以调用模拟方法时,我将参数设置为低于可能的值。要么导致编译错误,要么无法匹配调用mock方法的参数。OCMOCK_ANY[OCMArg任意指针]创建了一个NSError对象错误并说[OCMArgsetTo:error]。没有任何作用。如何模拟这种方法?请指教。编辑-(id)init{self=[superinit];if(self){idwcm=[OCMockObjectpartialMockForObject:self];[[[wcmstub]andCall:@selector(mockGetWakeupCa

ios - 如何在 ARC 中模拟 OCMock 中的 ** 参数

我的方法的参数之一是**错误,我的项目处于ARC模式。当为此方法编写stub以调用模拟方法时,我将参数设置为低于可能的值。要么导致编译错误,要么无法匹配调用mock方法的参数。OCMOCK_ANY[OCMArg任意指针]创建了一个NSError对象错误并说[OCMArgsetTo:error]。没有任何作用。如何模拟这种方法?请指教。编辑-(id)init{self=[superinit];if(self){idwcm=[OCMockObjectpartialMockForObject:self];[[[wcmstub]andCall:@selector(mockGetWakeupCa

ios - 测试目标 X 遇到错误(早期意外退出,操作从未完成引导 - 不会尝试重新启动

我已经开始使用OCMock为我已集成到我的项目工作区中的现有项目编写测试用例。执行此link中提到的所有步骤后.当我第一次执行我的测试用例时,它给出了上面的错误。我搜索了它并尝试了一些解决方案,例如创建新目标、重新启动Xcode,但它并没有帮助我。有什么想法吗? 最佳答案 我在这里有Cocoapods和Carthage的笔记和演示应用程序https://github.com/onmyway133/TestTarget确保所有框架都链接到测试目标配置RunpathSearchPaths以指向$(FRAMEWORK_SEARCH_PAT

ios - 测试目标 X 遇到错误(早期意外退出,操作从未完成引导 - 不会尝试重新启动

我已经开始使用OCMock为我已集成到我的项目工作区中的现有项目编写测试用例。执行此link中提到的所有步骤后.当我第一次执行我的测试用例时,它给出了上面的错误。我搜索了它并尝试了一些解决方案,例如创建新目标、重新启动Xcode,但它并没有帮助我。有什么想法吗? 最佳答案 我在这里有Cocoapods和Carthage的笔记和演示应用程序https://github.com/onmyway133/TestTarget确保所有框架都链接到测试目标配置RunpathSearchPaths以指向$(FRAMEWORK_SEARCH_PAT

iOS 单元测试之常用框架 OCMock 详解 | 京东云技术团队

一、单元测试1.1单元测试的必要性测试驱动开发并不是一个很新鲜的概念了。在日常开发中,很多时候需要测试,但是这种输出是必须在点击一系列按钮之后才能在屏幕上显示出来的东西。测试的时候,往往是用模拟器一次一次的从头开始启动app,然后定位到自己所在模块的程序,做一系列的点击操作,然后查看结果是否符合自己预期。这种行为无疑是对时间的巨大浪费。于是有很多资深工程师们发现,我们是可以在代码中构造一个类似的场景,然后在代码中调用我们之前想要检查的代码,并将运行结果和设想结果在程序中进行比较,如果一致,则说明我们的代码没有问题,由此就产生了单元测试。1.2单元测试的目的单元测试的主要目的是发现模块内部逻辑、

iOS 单元测试之常用框架 OCMock 详解

一、单元测试1.1单元测试的必要性测试驱动开发并不是一个很新鲜的概念了。在日常开发中,很多时候需要测试,但是这种输出是必须在点击一系列按钮之后才能在屏幕上显示出来的东西。测试的时候,往往是用模拟器一次一次的从头开始启动app,然后定位到自己所在模块的程序,做一系列的点击操作,然后查看结果是否符合自己预期。这种行为无疑是对时间的巨大浪费。于是有很多资深工程师们发现,我们是可以在代码中构造一个类似的场景,然后在代码中调用我们之前想要检查的代码,并将运行结果和设想结果在程序中进行比较,如果一致,则说明我们的代码没有问题,由此就产生了单元测试。1.2单元测试的目的单元测试的主要目的是发现模块内部逻辑、

ios - OCMock 能否模拟一个类,使其自动在被测代码中使用模拟实例而不注入(inject)它

我是OCMock的新手,有一个问题。我们能否stub一个类的方法,在该类的任何实例/对象上调用该方法都会被模拟例如:如果Class_A有一个非静态function_a,而Class_B有function_b,它在内部声明了Class_A的object_o。Class_A{-function_a}Class_B{-function_b{Obj_oofClassA[Obj_oa];}}现在,我想为Class_B编写单元测试并测试function_b。是否有某种机制可以创建Class_A的模拟和stubfunction_b,然后运行测试function_b并确保function_b已stub

ios - 是否可以将 OCMock 与 NSURLConnection 一起使用来注入(inject)模拟服务器响应数据?

我整个下午都在网上搜索使用OCMock的教程和示例,但我仍然不知道它是否可行以及如何将它与NSURLConnection结合使用以设置测试代码以模拟服务器发送响应HTTPPOST或GET的数据。有人知道这样做的便捷教程吗?更新:我随后遇到了这个:howtounittestaNSURLConnectionDelegate? 最佳答案 是的,但我发现另一个包OHHTTPStubs可以更轻松地完成您正在寻找的事情:https://github.com/AliSoftware/OHHTTPStubs[OHHTTPStubsshouldStu

ios - OCMock单元测试错误

我使用OCMock来测试单例方法。我得到“模拟类中不存在这样的方法”。testSingletonWithBlock方法的testSingleton方法错误和无限循环(屏幕截图,旋转指示器)编辑:在这里下载示例项目https://drive.google.com/file/d/0B-iP0P7UfFj0LVFpWWpPb3RDZFU/edit?usp=sharing这是我的实现经理:@implementationManager+(Manager*)sharedManager{staticManager*instance;dispatch_once_tpredicate;dispatch_