我用EUnit写了一个测试,但在控制台中没有任何异常细节输出.
exp_test() ->
?assertEqual(0, 1/0).
Run Code Online (Sandbox Code Playgroud)
运行此模块:下面的Erlang Shell输出中的exp_test()
** exception error: bad argument in an arithmetic expression
in function exp_test:'-exp_test/0-fun-0-'/1 (src/test/eunit/xxx_test.erl, line 8)
Run Code Online (Sandbox Code Playgroud)
但在EUnit输出之后
> eunit:test(xxx).
> xxx_test: exp_test...*failed*
::badarith
Run Code Online (Sandbox Code Playgroud)
EUnit不输出任何异常跟踪信息
我在eunit中尝试了详细的配置,但没有效果.
我想在eunit测试结果中输出一些异常细节.
谢谢〜
这是我的代码,运行最后一行CFRelease(addressBook),程序崩溃!帮帮我〜!
ABAddressBookRef addressBook = ABAddressBookCreateWithOptions(NULL, NULL);
NSMutableArray *groups = [NSMutableArray arrayWithCapacity:ABAddressBookGetGroupCount(addressBook)];
NSMutableArray *people = [NSMutableArray arrayWithCapacity:ABAddressBookGetGroupCount(addressBook)];
[(NSArray *)CFBridgingRelease(ABAddressBookCopyArrayOfAllGroups(addressBook)) enumerateObjectsUsingBlock:^(id obj_g, NSUInteger idx, BOOL *stop) {
ABRecordRef g = (__bridge ABRecordRef)obj_g;
NSString *gname = CFBridgingRelease(ABRecordCopyCompositeName(g));
NSMutableArray *gp = [[[NSArray alloc] init] mutableCopy];
[(NSArray *)CFBridgingRelease(ABGroupCopyArrayOfAllMembers(g)) enumerateObjectsUsingBlock:^(id obj_p, NSUInteger idx, BOOL *stop) {
ABRecordRef p = (__bridge ABRecordRef)obj_p;
ABMultiValueRef numbers = ABRecordCopyValue(p, kABPersonPhoneProperty);
NSString *pname = CFBridgingRelease(ABRecordCopyCompositeName(p));
[(NSArray *) CFBridgingRelease(ABMultiValueCopyArrayOfAllValues(numbers)) enumerateObjectsUsingBlock:^(id obj_n, NSUInteger idx, BOOL *stop) {
NSString *pnumber = CFBridgingRelease(CFBridgingRetain(obj_n)); …Run Code Online (Sandbox Code Playgroud)