Inject an image

On an open device, you can inject a still image or an animated GIF to mock the use of the camera. This is helpful for testing application actions, such as focus or image placement, in apps that rely on camera usage, for example barcode readers or banking apps. A more advanced use case could be the simulation of real user interactions in apps that rely on animated content. For example, injecting GIFs can help evaluate the robustness of facial recognition and anti-spoofing mechanisms in liveness checks for banking apps.

Image injection supports uploaded images in JPEG, JPG, PNG, BMP, or GIF. The file size cannot exceed 150 MB.

Requirements

For image injection to work, make sure that:

  • The application to test has been installed with sensor instrumentation enabled

  • The application to test stays in the foreground

  • No other instrumented application is running in the background

Limitations

The following limitations apply:

  • On Android, animated GIF images are only supported on devices with Camera2 or CameraX.

  • On Android devices, Perfecto currently supports GIFs with up to 15 frames. A GIF file that is too large in size may cause a timeout.

Instructions

To learn how to inject an image, watch this video or review the instructions following the video. For automated testing, you can use the existing Start Image Injection and Stop Image Injection commands.

To inject an image:

  1. On the open device, start the application you want to test and navigate to the relevant screen. Make sure the app stays in the foreground.

  2. On the device toolbar, click the image icon .

  3. In the Inject image dialog box, select the location of your image file: Repository (default) or Computer.

  4. Depending on your selection in step 2, do the following:

    • Repository: Search for and select the repository file you want to use.

      You can search by tag name, if applicable. If a file is associated with tags, a tag symbol appears below the file name, along with the number of tags associated with the file. To view the tag names, move the pointer over the tag icon .

    • Computer:

      1. Click ADD IMAGE.

      2. Browse to the file you want to use.

      3. Select the file and click Open.
        The file loads.

  5. (Optional) To get your images automatically resized, select the Auto-resize image checkbox (only available for image injection on Android devices).

    This option is helpful if image injection does not work with the original image size. By adjusting its size, you can proceed with your tests without resizing it manually.

    Important: Auto-resizing an image is not intended for regular use but to facilitate smoother testing and help you observe your application’s behavior when handling different image sizes. For optimal results, use the correct image size when testing.

    This functionality is generally available but will take effect only after your cloud is upgraded to the new instrumentation service, which is being gradually rolled out to all clouds.

  6. Click INJECT IMAGE

    Perfecto injects the file and your app should reflect the result shortly.

  7. Perform the required testing.

  8. When done, click the image icon  again and stop the injection.