iOSにおけるユニットテストにおける性能テスト(二)
1301 ワード
ユニットテストの基本的なテストのリリースと使用については、ユニットテストのパフォーマンステストについて説明しています.ユニットテストがない前に、性能をテストする方法はCACurrentMediaTime()で時間差を計算する方法で性能テストを行うのか、第1編で作成したZWToolsを例にとるのか.
ユニットテストがあると、性能テストの方法が変わります.最初の記事で作成したZWToolsTest.mファイルでは、システムがデフォルトで次の方法を生成します.性能をテストするコードメソッドmeasureBlockメソッドの対応するblockであれば、時間関連印刷情報は自動的に印刷されます.
テスト性能を具体的に実現する例.
説明:パフォーマンステストでは、同じコードを10回繰り返し、計算時間と平均時間を統計します.パフォーマンステストコードが作成されると、いつでもテストできます.
// ,
NSTimeInterval start = CACurrentMediaTime();
for (int i = 0; i < 1000; i++) {
ZWTools *tools = [[ZWTools alloc]init];
//NSLog(@"%@",tools);
}
NSLog(@"%f",CACurrentMediaTime() - start);
ユニットテストがあると、性能テストの方法が変わります.最初の記事で作成したZWToolsTest.mファイルでは、システムがデフォルトで次の方法を生成します.性能をテストするコードメソッドmeasureBlockメソッドの対応するblockであれば、時間関連印刷情報は自動的に印刷されます.
- (void)testPerformanceExample {
[self measureBlock:^{
//
}];
}
テスト性能を具体的に実現する例.
- (void)testPerformanceExample {
/*
// ,
NSTimeInterval start = CACurrentMediaTime();
for (int i = 0; i < 1000; i++) {
ZWTools *tools = [[ZWTools alloc]init];
//NSLog(@"%@",tools);
}
NSLog(@"%f",CACurrentMediaTime() - start);
*/
//
[self measureBlock:^{
//
for (int i = 0; i < 1000; i++) {
ZWTools *tools = [[ZWTools alloc]init];
NSLog(@"%@",tools);
}
}];
}
説明:パフォーマンステストでは、同じコードを10回繰り返し、計算時間と平均時間を統計します.パフォーマンステストコードが作成されると、いつでもテストできます.