Testing Safari on iOS

With TestArchitect, automated tests may be created and run on web applications running within Safari on iOS.

  • Testing Safari on iOS must be done via USB cable connection.
  • TestArchitect does not support capturing native iOS dialog boxes - that is, ones that, regardless of origin, are posted by the operating system rather than directly from the application. (An example of such a dialog box would be one displaying the message <app name> Would Like To Use Your Current Location, which originates from an application submitting a request to iOS, which then presents the popup.)

Supported iOS versions

TestArchitect supports the testing of web applications running within the Safari browser on the following iOS versions:

  • iOS 8.4
  • iOS 9.3.x, iOS 9.2.x, iOS 9.1, iOS 9.0
  • iOS 10.3.x
  • iOS 11.4

Technological approach

  • Remote debugging is a remote web inspector for debugging web applications on iOS devices. The following configurations must be set up to allow remote debugging to be performed:

    • Physically connect the iOS device to the TestArchitect controller via USB cable during test automation.
    • Enable Web Inspector on the iOS device. (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 List of supported Safari iOS built-in actions.)

    Built-in actionsApplicable controlsSequence of events triggered
    click, tapall controlstouchstart > touchend > mouseover > mousedown > focus > mouseup > click
    click table celltabletouchstart > touchend > mouseover > mousedown > focus > mouseup > click
    set list checkul, oltouchstart > touchend > mouseover > mousedown > focus > mouseup > click
    select, click list itemselect-one, select-multipleclick > change
    setinput-checkbox, input-radiotouchstart > touchend > mouseover > mousedown > focus > mouseup > click
    enter, setinput-text, input-password, input-search, input-tel, input-url, input-email, input-numberkeydown > keypress > input > keyup > change

Safari iOS testing prerequisites
Guides to setting up Safari iOS automation under TestArchitect.

Invoking Safari on iOS during automation
There are two methods by which Safari may be invoked on iOS devices:

Handling JavaScript popups on Safari iOS
TestArchitect offers a special set of actions for interfacing with JavaScript popups, which include alerts, prompts and confirmation dialogs.

List of supported Safari iOS built-in actions
Built-in actions supported by TestArchitect for testing Safari on iOS.

Limitations and workarounds of testing Safari on iOS
This topic categorizes some limitations you might encounter in testing web applications in Safari on iOS. Applicable workarounds, if available, are also discussed.

Copyright © 2021 LogiGear Corporation. All rights reserved. LogiGear is a registered trademark, and Action Based Testing and TestArchitect are trademarks of LogiGear Corporation. All other trademarks contained herein are the property of their respective owners.

LogiGear Corporation

1730 S. Amphlett Blvd. Suite 200, San Mateo, CA 94402

Tel: +1(800) 322-0333