SlideShare a Scribd company logo
KIF-iOS Integration Testing Framework
How to do iOS UI testing with KIF
What’s KIF?
KIF, which stands for Keep It Functional, is an iOS integration test
framework.
KIF builds and performs the tests using a standard XCTest testing target.
It allows for easy automation of iOS apps by leveraging the Accessibility APIs
in iOS. You’ll be able to write tests that simulate user input, like touches,
swipes, text entry and more.
Features
Minimizes Indirection : written in Objective-C, minimizing the number of
layers you have to build.
Easy Configuration: integrates directly into Xcode project.
Wide OS coverage: iOS 5.1 and above.
Test Like a User: KIF attempts to imitate actual user input.
Automatic Integration with Xcode Testing Tools: same testing platform
(subclass of XCTestCase), easily run a single KIF test with the Test Navigator
Other options?
1. XCTest
2. UI Automation
3. Calabash
4. FRANK – BDD for iOS
5. Specta, Kiwi
Why KIF? Is it worth it?
Pros
1. All objective-C.
2. It’s flexible. Can easily hook into your code base for real-user actions.
3. Easily runs on the command line for CI.
4. No external dependencies.
5. Easy to integrate into your Xcode workflow.
6. Use with other testing frameworks (Specta, Kiwi,etc,).
7. It's open source. Large number of active contributors.
Cons
1. It’s slower than original XCTest.
2. Test result format.
3. It can be inconsistent at times(?!)
How?
How?
How?
The KIF Tester uses private APIs to gain knowledge of the view hierarchy.
Using the Accessibility Label value of the views.
How?
Demo, Q&A

More Related Content

PDF
How To Build iOS Apps Without interface Builder
PDF
KKBOX WWDC17 SiriKit and CoreSpotlight - Seraph
PPTX
open-west
PPTX
JavaScript for ASP.NET programmers (webcast) upload
PPTX
PPTX
Ionic framework
PPTX
Build Your First iPhone or Android App with Telerik AppBuilder
How To Build iOS Apps Without interface Builder
KKBOX WWDC17 SiriKit and CoreSpotlight - Seraph
open-west
JavaScript for ASP.NET programmers (webcast) upload
Ionic framework
Build Your First iPhone or Android App with Telerik AppBuilder

What's hot (20)

PPTX
Universal Windows Platform
PDF
Building Salesforce1 Communities Apps with React Native and Flux
PPTX
Mobile Applications with Angular 4 and Ionic 3
PPTX
Telerik AppBuilder 101
PDF
A Better Interface Builder Experience
PDF
Automated Testing on iOS
PDF
Cross Platform Mobile Development
PDF
Creating mobile apps - an introduction to Ionic (Engage 2016)
PDF
Incremental deployment of new features
PDF
Creating an hybrid app in minutes with Ionic Framework
PDF
Azure bot service
PDF
Developing ionic apps for android and ios
PPTX
React Native - Why Designers should use React native. And everyone else too.
PPTX
SONY BBS - React Native
PDF
I Love APIs - Oct 2015
PDF
Introduction to React Native
PDF
Automated Testing with GHUnit and KIF
PPTX
Major project 2013 14
PPTX
Cross platform mobile development with xamarin and office 365
PDF
Android 3.0 Portland Java User Group 2011-03-15
Universal Windows Platform
Building Salesforce1 Communities Apps with React Native and Flux
Mobile Applications with Angular 4 and Ionic 3
Telerik AppBuilder 101
A Better Interface Builder Experience
Automated Testing on iOS
Cross Platform Mobile Development
Creating mobile apps - an introduction to Ionic (Engage 2016)
Incremental deployment of new features
Creating an hybrid app in minutes with Ionic Framework
Azure bot service
Developing ionic apps for android and ios
React Native - Why Designers should use React native. And everyone else too.
SONY BBS - React Native
I Love APIs - Oct 2015
Introduction to React Native
Automated Testing with GHUnit and KIF
Major project 2013 14
Cross platform mobile development with xamarin and office 365
Android 3.0 Portland Java User Group 2011-03-15
Ad

Viewers also liked (6)

PDF
Automated UI testing for iOS apps using KIF framework and Swift
PDF
Mocking In Swift
PDF
Tdd
PDF
iOS Unit Testing Like a Boss
PDF
Android UI Testing with Appium
PDF
iOS Test-Driven Development
Automated UI testing for iOS apps using KIF framework and Swift
Mocking In Swift
Tdd
iOS Unit Testing Like a Boss
Android UI Testing with Appium
iOS Test-Driven Development
Ad

Similar to Tech Talk #5 : KIF-iOS Integration Testing Framework - Nguyễn Hiệp (20)

PDF
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
PDF
Understanding XCUITest Framework Your Guide to Efficient iOS Testing.pdf
PPTX
XCUITest for iOS App Testing and how to test with Xcode
PDF
A Comprehensive Guide to Efficiently Writing and Implementing iOS Unit Tests.pdf
PPTX
How to Choose the Best Platform for iOS App Development?
PDF
Top iOS Testing Tools and Frameworks.pdf
PPTX
iOS Developer Interview Questions
PPTX
How Do I Pick the Best Platform for an iOS App?
PPTX
Enhancedpptfor_SwiftUI_Presentation.pptx
PPTX
How to Develop an iOS App 7-Step Guide.pptx
PDF
Xcode 7 UI Testing - Xcake Dublin, October 2015
PDF
How React Native Works for iOS App Development
PDF
Reasons to Choose Swift for iOS App Development.pdf
PDF
iOS Development Survival Guide for the .NET Guy
PPTX
Trending Framework in Cross Platform Development in 2025
PPTX
UI5conBE 2020 - Keynote
PPTX
5 Leading Technology for IOS App Development.pptx
PDF
Best iOS Application Development Tools.pdf
PDF
Step-by-Step Guide to Developing a Successful iOS App.pdf
DOCX
Step-by-Step Guide to Developing a Successful iOS App.docx
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Understanding XCUITest Framework Your Guide to Efficient iOS Testing.pdf
XCUITest for iOS App Testing and how to test with Xcode
A Comprehensive Guide to Efficiently Writing and Implementing iOS Unit Tests.pdf
How to Choose the Best Platform for iOS App Development?
Top iOS Testing Tools and Frameworks.pdf
iOS Developer Interview Questions
How Do I Pick the Best Platform for an iOS App?
Enhancedpptfor_SwiftUI_Presentation.pptx
How to Develop an iOS App 7-Step Guide.pptx
Xcode 7 UI Testing - Xcake Dublin, October 2015
How React Native Works for iOS App Development
Reasons to Choose Swift for iOS App Development.pdf
iOS Development Survival Guide for the .NET Guy
Trending Framework in Cross Platform Development in 2025
UI5conBE 2020 - Keynote
5 Leading Technology for IOS App Development.pptx
Best iOS Application Development Tools.pdf
Step-by-Step Guide to Developing a Successful iOS App.pdf
Step-by-Step Guide to Developing a Successful iOS App.docx

More from Nexus FrontierTech (20)

PPTX
[Executive Lounge Talk] Digital Transformation Journey
PDF
[AI series Talk #2] From PoC to Production - A Case Study
PDF
[AI Series Talk #2] Moving AI from PoC Stage to Production
PDF
[VFS 2019] Introduction to GANs - Pixta Vietnam
PPTX
[VFS 2019] Enabling Young Generation for Future - AWS Vietnam User Group
PPTX
[VFS 2019] Building chatbot with RASA
PPTX
[VFS 2019] Vietnamese Speech-to-Text: Applications and Product
PDF
[VFS 2019] How AI Will Innovate Recruitment
PPTX
[VFS 2019] AI in Finance
PPTX
[VFS 2019] Preventive Approach to Designing and Selling Healthy AI System
PDF
[VFS 2019] Phương pháp phát hiện bất thường bằng học máy
PDF
[VFS 2019] OCR Techniques for Digital Transformation Evolution
PPTX
[VFS 2019] Human Activity Recognition Approaches
PPTX
[VFS 2019] Aimesoft Solutions
PPTX
[VFS 2019] Datamart Introduction (brief)
PDF
[VFS 2019] Data Strategy for Vietnamese Businesses to Levarage AI
PPTX
[VFS 2019] AI for Banks
PDF
[VFS 2019] Digital Solution for Enterprises: 24/7 A.I English Speaking Coach
PDF
[VFS 2019] Project Management for AI-based Product - A Better Approach
PDF
[VFS 2019] AI Ecosystem transition from zero to hero - case study by rubikAI
[Executive Lounge Talk] Digital Transformation Journey
[AI series Talk #2] From PoC to Production - A Case Study
[AI Series Talk #2] Moving AI from PoC Stage to Production
[VFS 2019] Introduction to GANs - Pixta Vietnam
[VFS 2019] Enabling Young Generation for Future - AWS Vietnam User Group
[VFS 2019] Building chatbot with RASA
[VFS 2019] Vietnamese Speech-to-Text: Applications and Product
[VFS 2019] How AI Will Innovate Recruitment
[VFS 2019] AI in Finance
[VFS 2019] Preventive Approach to Designing and Selling Healthy AI System
[VFS 2019] Phương pháp phát hiện bất thường bằng học máy
[VFS 2019] OCR Techniques for Digital Transformation Evolution
[VFS 2019] Human Activity Recognition Approaches
[VFS 2019] Aimesoft Solutions
[VFS 2019] Datamart Introduction (brief)
[VFS 2019] Data Strategy for Vietnamese Businesses to Levarage AI
[VFS 2019] AI for Banks
[VFS 2019] Digital Solution for Enterprises: 24/7 A.I English Speaking Coach
[VFS 2019] Project Management for AI-based Product - A Better Approach
[VFS 2019] AI Ecosystem transition from zero to hero - case study by rubikAI

Recently uploaded (6)

PDF
Lesson 13- HEREDITY _ pedSAWEREGFVCXZDSASEWFigree.pdf
DOC
Camb毕业证学历认证,格罗斯泰斯特主教大学毕业证仿冒文凭毕业证
PDF
6-UseCfgfhgfhgfhgfhgfhfhhaseActivity.pdf
PPTX
ASMS Telecommunication company Profile
PPTX
Introduction to Packet Tracer Course Overview - Aug 21 (1).pptx
DOC
证书学历UoA毕业证,澳大利亚中汇学院毕业证国外大学毕业证
Lesson 13- HEREDITY _ pedSAWEREGFVCXZDSASEWFigree.pdf
Camb毕业证学历认证,格罗斯泰斯特主教大学毕业证仿冒文凭毕业证
6-UseCfgfhgfhgfhgfhgfhfhhaseActivity.pdf
ASMS Telecommunication company Profile
Introduction to Packet Tracer Course Overview - Aug 21 (1).pptx
证书学历UoA毕业证,澳大利亚中汇学院毕业证国外大学毕业证

Tech Talk #5 : KIF-iOS Integration Testing Framework - Nguyễn Hiệp

  • 1. KIF-iOS Integration Testing Framework How to do iOS UI testing with KIF
  • 2. What’s KIF? KIF, which stands for Keep It Functional, is an iOS integration test framework. KIF builds and performs the tests using a standard XCTest testing target. It allows for easy automation of iOS apps by leveraging the Accessibility APIs in iOS. You’ll be able to write tests that simulate user input, like touches, swipes, text entry and more.
  • 3. Features Minimizes Indirection : written in Objective-C, minimizing the number of layers you have to build. Easy Configuration: integrates directly into Xcode project. Wide OS coverage: iOS 5.1 and above. Test Like a User: KIF attempts to imitate actual user input. Automatic Integration with Xcode Testing Tools: same testing platform (subclass of XCTestCase), easily run a single KIF test with the Test Navigator
  • 4. Other options? 1. XCTest 2. UI Automation 3. Calabash 4. FRANK – BDD for iOS 5. Specta, Kiwi
  • 5. Why KIF? Is it worth it?
  • 6. Pros 1. All objective-C. 2. It’s flexible. Can easily hook into your code base for real-user actions. 3. Easily runs on the command line for CI. 4. No external dependencies. 5. Easy to integrate into your Xcode workflow. 6. Use with other testing frameworks (Specta, Kiwi,etc,). 7. It's open source. Large number of active contributors.
  • 7. Cons 1. It’s slower than original XCTest. 2. Test result format. 3. It can be inconsistent at times(?!)
  • 10. How? The KIF Tester uses private APIs to gain knowledge of the view hierarchy. Using the Accessibility Label value of the views.
  • 11. How?