У меня есть простая функция тестирования, которая будет нажимать кнопку для измерения производительности.Я использую XCTest.После возвращения measureBlock я вижу кучу perf-метрик на консоли.Я хотел бы получить это в тестовой программе таким образом, чтобы я мог заполнить данные в другом месте программно.Просмотр тестовых данных на тестовой консоли оказывается медленным, потому что у меня много тестовых случаев.
- (void)testUseMeasureBlock {
XCUIElement *launchTest1Button = [[XCUIApplication alloc] init].buttons[@"Launch Test 1"];
void (^blockToMeasure)(void) = ^void(void) {
[launchTest1Button tap];
};
// Run once to warm up any potential caching properties
@autoreleasepool {
blockToMeasure();
}
// Now measure the block
[self measureBlock:blockToMeasure];
/// Collect the measured metrics and send somewhere.
Когда мы запускаем тест, он печатает:
measured [Time, seconds] average: 0.594, relative standard deviation: 0.517%, values: [0.602709, 0.593631, 0.593004, 0.592350, 0.596199, 0.593807, 0.591444, 0.593460, 0.592648, 0.592769],
ЕслиЯ мог бы получить среднее время, которого сейчас было бы достаточно.