Podcast

46: Andy Obusek: iOS Testing: The Apple Watch is Coming – Are You Ready?

By Test Guild
  • Share:
Join the Guild for FREE
Andy Obusek iOS Test Talks Feature

The Apple Watch is coming. Are you ready? With the release of the much-anticipated watch happening in less than a month, I thought it would be fun to talk about iOS testing. This episode should help you get up-to-speed with iOS testing and start thinking about how you’re going to test Apple Watch apps. Andy Obusek is an iOS mobile developer at the popular Email marketing firm AWeber, and he shares some of his favorite IOS tips and tricks with us.

[app_audio src=”http://traffic.libsyn.com/testtalks/ttAndyObusekIOSTesting46.mp3″]

Andy Obusek

andyHeadShot

Andy has been an iOS Engineer since iOS 3.0 with professional experience as an independent and enterprise developer. He is the co-host of the podcast Brotherly Mobile, where he talks about technology and software development with a loose focus on mobile devices. Andy has also spent significant time coding in the J2EE world and contributes articles to many of the popular technology how-to sites, including Tuts+.

Quotes & Insights from this Test Talk

  • XCODE is where you write your IOS code in.
  • You have two options when debugging your IOS apps – either on a physical device or a simulator – and there are pros and cons for running on either one.
  • It normally takes more time to run your test on an actual device.
  • XCTest is Apple’s unit testing framework.
  • Writing automation tests is hard, and is something you need organizational support for to be successful with.
  • You write Objective-C code that calls methods from your “production” code and verify that the code under test actually does what it's intended to do.
  • UI Automation is a tool provided by Apple to perform a higher level of testing on your iOS application than anything achievable with XCTest.
  • UI Automation tests are written in JavaScript.
  • OCMock is one of Andy’s favorite open-source tools that helps to mock objects for Objective-C.
  • KIF, which stands for Keep It Functional, is an iOS integration test framework. It allows for easy automation of iOS apps by leveraging the accessibility attributes that the OS makes available for those with visual disabilities.
  • KIF allows you to write automated tests using Objective-C or Swift.
  • FBSnapshotTestCase – created by Facebook and allows you to create image-based UI automated tests.
  • It's important that KIF does not make it into production code, as it will get your app submission denied by Apple.
  • Xcode 6 and above has the ability to measure the performance of a piece of code.
  • Apple Watch uses the WatchKit to write watch apps. The code you write for Apple Watch apps is going to be bundled with the iOS app that is paired with that WatchKit app.
  • Much, much more!

Resources

Connect with{Name}

May I Ask You For a Favor?

Thanks again for listening to the show. If it has helped you in any way, shape or form, please share it using the social media buttons you see on the page.

Additionally, reviews for the podcast on iTunes are extremely helpful and greatly appreciated! They do matter in the rankings of the show and I read each and every one of them.

SauceLabsSponser

Special offer for TestTalks listeners, get 20 hours of automated testing for free when you sign-up with promo code testtalks14 (more info).

Leave a Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.

  1. Very interesting episode, glad to hear about iOS unit and functional testing. Andy has done a great job at describing the tools available!

    While KIF is, in my opinion, the best acceptance testing framework for iOS at the moment, when it comes to unit testing there are many open source frameworks that can enhance the quality of the tests written that haven’t been mentioned. Two of them: Specta https://github.com/specta/specta for Objective-C and Quick https://github.com/quick/quick for Swift. They offer an RSpec style syntax, that makes for more expressive tests.

    As for when to test on device or simulator, usually the unit tests can be tested reliably on the simulator, making for a faster feedback loop. On the other hand functional tests tend to be flaky on the simulator, so I find myself mainly using the device for those. This is an important thing to keep in mind when evaluating whether to build an in-house testing setup or relying on a CI provider in the cloud, as the latter might support only simulator tests.

    Finally, I do think Swift will eventually replace Objective-C, and Apple has at least one app in production written in the new language, the WWD app.

    If you’re looking for more informations on iOS unit and acceptance testing I’ve written a few posts on the topic, this is a good place to start for an overview of the best tools currently available: http://www.mokacoding.com/blog/ios-testing-in-2015/

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}

267: Smart Test Execution with Eran Sher

Posted on 08/25/2019

Do you run an entire automation test for every build because you don’t ...

266: Automation Journey and TestNG with Rex Jones II

Posted on 08/18/2019

In this episode we’ll test talk with Rex Jones about his automation testing ...

265: TestProject a Community Testing Platform with Mark Kardashov

Posted on 08/11/2019

In this episode, we’ll talk to Mark Kardashov, CEO and Co-Founder of TestProject, ...