I have been following courses on http://testautomationu.applitools.com/ for a while now and when a new course on iOS XCUITests from Shashikant showed up, I went all in and finished it up and got my first certificate!
I have been doing XCUItests for few years and had the false idea course would be redundant but boy I have learned quite a few things that will help me directly at work.
- Enums for page objects is clean trick, would love to see how can it be extended to multiple screens and objects.
- XCTContext is nice little trick that gives clean reporting and groups test blocks
- Eyes SDK is pretty easy and one can add visual checking in minutes, integrates nicely with a well-organized project.
- Travis CI doesn’t have pay wall even for Mac builds!
- xcodebuild -list is concise and handy command that summarizes all schemes, builds in your project.
- Instead of deleting or worst commenting a flaky test, one can disable it from the scheme (I think it adds to the -skip-testing option)
Few things that I didn’t like:
- Using BDD style in an intro course seem out of place, especially since screen objects were introduced later. While some projects/teams may like BDD, it is not a de-facto for all automation projects.
- There is one quiz question which has a wrong answer, it impacted my credits
We could run BDD or any other xcuitests from xcodebuild or fastlane as shown later in the course.