user scenario based ui testing with kif
TRANSCRIPT
![Page 1: User Scenario based UI testing with KIF](https://reader034.vdocuments.site/reader034/viewer/2022050719/55a514181a28ab866b8b458e/html5/thumbnails/1.jpg)
KIFScenario based testing for iOStrippiece Inc. @kitauske
![Page 2: User Scenario based UI testing with KIF](https://reader034.vdocuments.site/reader034/viewer/2022050719/55a514181a28ab866b8b458e/html5/thumbnails/2.jpg)
![Page 3: User Scenario based UI testing with KIF](https://reader034.vdocuments.site/reader034/viewer/2022050719/55a514181a28ab866b8b458e/html5/thumbnails/3.jpg)
What's UI testing?
![Page 4: User Scenario based UI testing with KIF](https://reader034.vdocuments.site/reader034/viewer/2022050719/55a514181a28ab866b8b458e/html5/thumbnails/4.jpg)
Use case scenarionot jsut for a screen
![Page 5: User Scenario based UI testing with KIF](https://reader034.vdocuments.site/reader034/viewer/2022050719/55a514181a28ab866b8b458e/html5/thumbnails/5.jpg)
What's use case scenario?
![Page 6: User Scenario based UI testing with KIF](https://reader034.vdocuments.site/reader034/viewer/2022050719/55a514181a28ab866b8b458e/html5/thumbnails/6.jpg)
Home → Detail → Buy
![Page 7: User Scenario based UI testing with KIF](https://reader034.vdocuments.site/reader034/viewer/2022050719/55a514181a28ab866b8b458e/html5/thumbnails/7.jpg)
User Interface Flow Testing
![Page 8: User Scenario based UI testing with KIF](https://reader034.vdocuments.site/reader034/viewer/2022050719/55a514181a28ab866b8b458e/html5/thumbnails/8.jpg)
Main use case scenariosin trippiece
- Home → Detail → Note → Fav
- Home → Favs → Detail → Comment → Note
- Detail → Others Profile → Others favs → Join
![Page 9: User Scenario based UI testing with KIF](https://reader034.vdocuments.site/reader034/viewer/2022050719/55a514181a28ab866b8b458e/html5/thumbnails/9.jpg)
Introduction to KIF
target 'Acceptance Tests', :exclusive => true do pod 'KIF', '~> 3.0', :configurations => ['Debug']end
![Page 10: User Scenario based UI testing with KIF](https://reader034.vdocuments.site/reader034/viewer/2022050719/55a514181a28ab866b8b458e/html5/thumbnails/10.jpg)
How to use
![Page 11: User Scenario based UI testing with KIF](https://reader034.vdocuments.site/reader034/viewer/2022050719/55a514181a28ab866b8b458e/html5/thumbnails/11.jpg)
1.Set AccessibilityLabel
2.Run Action
#import <KIF/KIF.h>
@interface HomeTests: KIFTestCase@end
@implementation HomeTests
- (void)testHome{ [tester tapViewWithAccessibilityLabel:@"HomeTableView"];}
@end
![Page 12: User Scenario based UI testing with KIF](https://reader034.vdocuments.site/reader034/viewer/2022050719/55a514181a28ab866b8b458e/html5/thumbnails/12.jpg)
DEMO
![Page 13: User Scenario based UI testing with KIF](https://reader034.vdocuments.site/reader034/viewer/2022050719/55a514181a28ab866b8b458e/html5/thumbnails/13.jpg)
Screenshot- (void)capture{ UIWindow *keyWindow = [[UIApplication sharedApplication] keyWindow]; UIGraphicsBeginImageContextWithOptions(keyWindow.bounds.size, NO, 0); CGContextRef context = UIGraphicsGetCurrentContext(); NSArray *windows = [[UIApplication sharedApplication] windows]; [windows enumerateObjectsUsingBlock:^(UIWindow *window, NSUInteger idx, BOOL *stop) { [window.layer renderInContext:context]; }];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); [UIImagePNGRepresentation(image) writeToFile:@"hoge.png" atomically:YES];}
![Page 14: User Scenario based UI testing with KIF](https://reader034.vdocuments.site/reader034/viewer/2022050719/55a514181a28ab866b8b458e/html5/thumbnails/14.jpg)
GIFImageMagick
convert -delay 100 -loop 1 *.png movie.gif
![Page 15: User Scenario based UI testing with KIF](https://reader034.vdocuments.site/reader034/viewer/2022050719/55a514181a28ab866b8b458e/html5/thumbnails/15.jpg)
Work In Progress
- Send screenshots or GIF to S3