Testing Safari on iOS Simulator

TestArchitect allows you to create and run automated tests of web applications in Safari on a simulated iOS device.

Remember: Ensure that the Interface Viewer is closed prior to running automated tests.
Apple's Simulator allows you to rapidly prototype and test builds of your app during the development process. Installed as part of the Xcode tools, Simulator runs on your Mac and behaves like a standard Mac app while simulating an iPhone, iPad, Apple Watch, or Apple TV environment. (Learn more.)
Note: At present, TestArchitect only supports automation on Simulator for iOS, not watchOS or tvOS.

Supported iOS versions

TestArchitect supports the testing of web applications running within the Safari browser on the following versions of a simulated iOS device:
  • iOS 8.4
  • iOS 8.3

Technological approach

  • Remote debugging is a remote web inspector for debugging web applications on the iOS Simulator. The following configuration must be set up to allow remote debugging to be performed:
    • Enable Web Inspector of Safari on iOS Simulator (Learn more.)
  • Event-fired action model: TestArchitect attempts to effectuate built-in actions in a manner that is as close as possible to real user actions. In most cases, for each given UI action, TestArchitect calls a sequence of events as follows. (Refer to supported built-in actions.)
    Built-in actions Applicable controls Sequence of events triggered
    click, tap all controls touchstart > touchend > mouseover > mousedown > focus > mouseup > click
    click table cell table touchstart > touchend > mouseover > mousedown > focus > mouseup > click
    set list check ul, ol touchstart > touchend > mouseover > mousedown > focus > mouseup > click
    select, click list item select-one, select-multiple click > change
    set input-checkbox, input-radio touchstart > touchend > mouseover > mousedown > focus > mouseup > click
    enter, set input-text, input-password, input-search, input-tel, input-url, input-email, input-number keydown > keypress > input > keyup > change
    textarea keydown > keypress > input > keyup