CreateML OR AI Tools
for iOS App Testing?
Shashikant Jagtap
Twitter: Shashikant86
Blogs: https://shashikantjagtap.net
Topics
•What is AI and ML
•How AI-based tools test iOS Apps
•Challenges in Testing iOS Apps with AI/ML
•What’s is CreateML & How to Train ML Models with
CreateML
•CreateML - Demo
What is AI and ML
Machine Learning Artificial Intelligence
Why QA Needs AI/ML?
DevOps
QA with the pace of CI/CD is impossible
Continuous DeliveryContinuous Deployment
How AI/ML Help QA?
AI will help existing QA Efforts
Code-less
Planning-less
Flaky-less
human-less?
Infrastructure-less
AI/ML Tools
•Mabl
•Test.ai
•testim.io
•Functionize
•Appliance
•TestCraft
•Bitbar
•Applitools
•Many more + coming soon …
How AI/ML Tools Test
Web Apps?
•Provide web app URL and test login credential
•AI tool will crawl your web app and reports broken
link, JS errors
•Auto Generates Scenarios and Perform Journeys
•Give Feedback from CI Server
•No Code, No Infrastructure. Trainable Virtual QA
Engineer
How AI/ML Tools Test
Mobile Apps?
•Provide pre-built app binary (IPA, APK)
•AI tool will install app on devices
•Auto Generates Scenarios and Perform Journeys
•Reports issues, crashes. Generate Screenshots &
recordings
•Give Feedback from CI Server
•No Code, No Infrastructure.
iOS App Testing
•Unit Testing ( XCTest)
•Integration and Network Testing (XCTest, Fitnesse)
•UITest (XCUITest, Appium, Calabash)
•Non-functional testing
•Heavy Manual Testing
Role of AI in iOS Testing
•Reduce the burden on controlled testing
•Free up time for exploratory testing
•Great Coverage in limited time
•Works well for faster feedback
Challenges
•iOS Deployment and Build Process
•Apple Ecosystem
•Training Models for iOS Apps
•App Extensions
Welcome CreateML
•Apple’s framework- Train ML Model
•No need to learn TensorFlow or IBM Watson
•Just few lines of Swift and data to train models
What You Need
•maOS Mojave
•Xcode 10
•You are set!
How To Train Models
•Collect Training and Testing Data
•Open Xcode Playground-macOS template
•import libraries and start Training Models
How To Train Models
Save Accurate Model
•Once achieved desired Accuracy
•Save the model (.mlmodel)
•Use this model for CoreML
•No Need to Learn other ML tools
What Can Be Trained
•Images
•Tabular data (CSV, JSON)
•Complex data if you are ML expert
Can CreateML Test iOS
Apps
•Images —> Visual Validation Testing
•JSON -> API Testing of JSON Responses
•Let’s Explore that into the Demo
It’s All About DATA
https://www.evolvedmedia.com/tomato-tomato-how-do-you-say-data/
CreateML- Demo
CreateML
https://www.youtube.com/watch?v=LhPIqHn8dwo
Question?

CreateML Demo: Train Machine Learning Models

  • 1.
    CreateML OR AITools for iOS App Testing? Shashikant Jagtap Twitter: Shashikant86 Blogs: https://shashikantjagtap.net
  • 2.
    Topics •What is AIand ML •How AI-based tools test iOS Apps •Challenges in Testing iOS Apps with AI/ML •What’s is CreateML & How to Train ML Models with CreateML •CreateML - Demo
  • 3.
    What is AIand ML Machine Learning Artificial Intelligence
  • 4.
    Why QA NeedsAI/ML? DevOps QA with the pace of CI/CD is impossible Continuous DeliveryContinuous Deployment
  • 5.
    How AI/ML HelpQA? AI will help existing QA Efforts Code-less Planning-less Flaky-less human-less? Infrastructure-less
  • 6.
  • 7.
    How AI/ML ToolsTest Web Apps? •Provide web app URL and test login credential •AI tool will crawl your web app and reports broken link, JS errors •Auto Generates Scenarios and Perform Journeys •Give Feedback from CI Server •No Code, No Infrastructure. Trainable Virtual QA Engineer
  • 8.
    How AI/ML ToolsTest Mobile Apps? •Provide pre-built app binary (IPA, APK) •AI tool will install app on devices •Auto Generates Scenarios and Perform Journeys •Reports issues, crashes. Generate Screenshots & recordings •Give Feedback from CI Server •No Code, No Infrastructure.
  • 9.
    iOS App Testing •UnitTesting ( XCTest) •Integration and Network Testing (XCTest, Fitnesse) •UITest (XCUITest, Appium, Calabash) •Non-functional testing •Heavy Manual Testing
  • 10.
    Role of AIin iOS Testing •Reduce the burden on controlled testing •Free up time for exploratory testing •Great Coverage in limited time •Works well for faster feedback
  • 11.
    Challenges •iOS Deployment andBuild Process •Apple Ecosystem •Training Models for iOS Apps •App Extensions
  • 12.
    Welcome CreateML •Apple’s framework-Train ML Model •No need to learn TensorFlow or IBM Watson •Just few lines of Swift and data to train models
  • 13.
    What You Need •maOSMojave •Xcode 10 •You are set!
  • 14.
    How To TrainModels •Collect Training and Testing Data •Open Xcode Playground-macOS template •import libraries and start Training Models
  • 15.
  • 16.
    Save Accurate Model •Onceachieved desired Accuracy •Save the model (.mlmodel) •Use this model for CoreML •No Need to Learn other ML tools
  • 17.
    What Can BeTrained •Images •Tabular data (CSV, JSON) •Complex data if you are ML expert
  • 18.
    Can CreateML TestiOS Apps •Images —> Visual Validation Testing •JSON -> API Testing of JSON Responses •Let’s Explore that into the Demo
  • 19.
    It’s All AboutDATA https://www.evolvedmedia.com/tomato-tomato-how-do-you-say-data/
  • 20.
  • 21.
  • 22.