我想在基夫拍个截图。我在kif项目的一个私有类中看到了here,这是可能的,但我很难将其转换为step。有人能帮上忙吗?
发布于 2013-05-03 00:41:05
在处理了一下之后,我将这个添加到了我的KIFTestStep.m中
+ (id)stepToTakeScreenShotwithName:(NSString *)name;
{
NSString *description = [NSString stringWithFormat:@"Take a screenshot saved by the name %@", name];
return [self stepWithDescription:description executionBlock:^(KIFTestStep *step, NSError **error) {
NSString *outputPath = [NSString stringWithFormat:@"/Users/%@/ScreenShots", NSUserName()];
NSArray *windows = [[UIApplication sharedApplication] windows];
if (windows.count == 0) {
return KIFTestStepResultFailure;
}
UIGraphicsBeginImageContext([[windows objectAtIndex:0] bounds].size);
for (UIWindow *window in windows) {
[window.layer renderInContext:UIGraphicsGetCurrentContext()];
}
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
NSTimeInterval timeStamp = [[NSDate date] timeIntervalSince1970];
NSNumber *timeStampObj = [NSNumber numberWithDouble: timeStamp];
outputPath = [outputPath stringByExpandingTildeInPath];
outputPath = [outputPath stringByAppendingPathComponent:[name stringByReplacingOccurrencesOfString:@"/" withString:@"_"]];
outputPath = [outputPath stringByAppendingString:[timeStampObj stringValue]];
outputPath = [outputPath stringByAppendingPathExtension:@"png"];
[UIImagePNGRepresentation(image) writeToFile:outputPath atomically:YES];
return KIFTestStepResultSuccess;
}];
}发布于 2014-05-20 08:55:46
这是在KIF 3.0.4中添加的。参见here。
https://stackoverflow.com/questions/16341198
复制相似问题