objective-c - 只有成功才能在 SenTest 中运行代码的任何方法?

标签 objective-c macos cocoa unit-testing sentestingkit

在我的 Mac Cocoa 单元测试中,我想在测试过程中输出一些文件,并在测试完成后删除它们,但只有在没有失败的情况下。如何做到这一点(和/或最干净的方法是什么)?

最佳答案

你的问题让我很好奇,所以我调查了一下!

我想我会覆盖 SenTestCase 类中的 failWithException: 方法(您的测试运行的类继承自此),并设置“保留输出文件”在调用 super 的方法之前标记或其他东西。

下面是 SenTestCase.h 对这个方法的描述:

/*"Failing a test, used by all macros"*/
- (void) failWithException:(NSException *) anException;

因此,如果您只使用 SenTest 宏来测试和/或失败(并且在您的情况下很可能是这样),那应该涵盖任何测试失败。

关于objective-c - 只有成功才能在 SenTest 中运行代码的任何方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9037266/

相关文章:

ios - 具有单例类的多个 NSURLConnection sendAsynchronous 请求

objective-c - 将 JSON 反序列化为嵌套核心数据实体时出现 iPhone 核心数据 "Failed to call designated initializer on NSManagedObject class"错误

macos - Cocoa应用程序,使用文件new创建应用程序的新实例?

macos - 即使侧边栏在 SwiftUI 中打开,如何使 View 全屏显示?

objective-c - 如何在背景窗口上设置 [NSTextView selectedTextAttributes]?

iphone - 如何在iphone中以编程方式获取 "General -> Date & Time -> Set Automatically"的值?

ios - 在 KVO 中使用什么作为键路径?

cocoa - NSFileManager 错误?

objective-c - 如何关闭 NSOpenPanel 或为什么它不自动关闭?

objective-c - 内联编辑 `NSOutlineView` 的标题