2015-11-29 24 views
-2

我正在做作業,要求我返回一個完整的句子,指出我最喜歡的奶酪。我已經寫出了下面的代碼,但我不確定在哪裏定義cheeseName。另外,如何測試代碼以查看它是否返回正確的cheeseNameNSLog()NSString定義變量進入格式

這是我的.m文件

#import "StringCheese.h" 

@implementation StringCheese 

- (NSString *) favoriteCheeseStringWithCheese:(NSString *)cheeseName { 
/* WORK HERE */ 
return [NSString stringWithFormat:@"My favorite cheese is %@.", cheeseName]; 
/My answer is the code above/ 
} 

這是我的其他.m文件:

#import <XCTest/XCTest.h> 
#import "StringCheese.h" 

@interface StringCheeseTests : XCTestCase 

@property (nonatomic, strong) StringCheese *stringCheese; 

@end 

@implementation StringCheeseTests 

- (void)setUp 
{ 
[super setUp]; 
// Put setup code here. This method is called before the invocation of each test method in the class. 
self.stringCheese = [[StringCheese alloc] init]; 
} 

- (void)tearDown 
{ 
// Put teardown code here. This method is called after the invocation of each test method in the class. 
[super tearDown]; 
} 

- (void)testThatCheeseFavoritingWorks { 
NSString *ricottaString = @"ricotta"; 
NSString *favoriteCheese = [self.stringCheese favoriteCheeseStringWithCheese:ricottaString]; 

XCTAssertEqualObjects(favoriteCheese, @"My favorite cheese is ricotta.", @"Incorrect favorite cheese string returned."); 

NSString *goatString = @"goat"; 
favoriteCheese = [self.stringCheese favoriteCheeseStringWithCheese:goatString]; 
XCTAssertEqualObjects(favoriteCheese, @"My favorite cheese is goat.", @"Incorrect favorite cheese string returned."); 

}

編輯:當我運行它的結果

12:21:17.116 xctest[13545:2066149] _XCT_testBundleReadyWithProtocolVersion:minimumVersion: reply received 
12:21:17.129 xctest[13545:2066149] _IDE_startExecutingTestPlanWithProtocolVersion:16 
Test Suite 'Selected tests' started at 2015-11-29 12:21:17.150 
Test Suite 'StringCheeseTests' started at 2015-11-29 12:21:17.153 
Test Case '-[StringCheeseTests testThatCheeseFavoritingWorks]' started. 
Test Case '-[StringCheeseTests testThatCheeseFavoritingWorks]' passed (0.005 seconds). 
Test Suite 'StringCheeseTests' passed at 2015-11-29 12:21:17.162. 
Executed 1 test, with 0 failures (0 unexpected) in 0.005 (0.009) seconds 
Test Suite 'Selected tests' passed at 2015-11-29 12:21:17.165. 
Executed 1 test, with 0 failures (0 unexpected) in 0.005 (0.015) seconds 

Test session log: 
/var/folders/c0/1phmslcx35ngtg42z44yk75h0000gn/T/com.apple.dt.XCTest-status/Session-2015-11-29_12:21:08-HEws7M.log 

Program ended with exit code: 0 
+0

那是什麼你這段代碼有問題嗎? –

+0

我不確定我是否正確編寫了代碼來表明我最喜歡的奶酪。作業陳述如下:'創建一個表示喜歡的奶酪的句子。 用法示例: @code NSString * fullSentence = [cheese favoriteCheeseStringWithCheese:@「cheddar」]; // fullSentence是「我最喜歡的奶酪是切達乾酪。」 @endcode @param cheeseName 最喜歡的奶酪的名稱 @return返回一個完整的句子,指出最喜歡的奶酪。 */ ' – Shadylane

+0

那麼,運行它會發生什麼? –

回答

-2

要打印出增值:

NSLog(@"%@", favouriteCheese); 

在結束 - (無效)testThatCheeseFavoritingWorks方法,因此它看起來像:

- (void)testThatCheeseFavoritingWorks { 
NSString *ricottaString = @"ricotta"; 
NSString *favoriteCheese = [self.stringCheese favoriteCheeseStringWithCheese:ricottaString]; 

XCTAssertEqualObjects(favoriteCheese, @"My favorite cheese is ricotta.", @"Incorrect favorite cheese string returned."); 

NSString *goatString = @"goat"; 
favoriteCheese = [self.stringCheese favoriteCheeseStringWithCheese:goatString]; 
XCTAssertEqualObjects(favoriteCheese, @"My favorite cheese is goat.", @"Incorrect favorite cheese string returned."); 

NSLog(@"%@", favoriteCheese); 
}