Generate Accessibility Tests

Generating Accessibility Tests for the app screen using our AI based service Vision Nova, through publicly accessible image url using both SDKs and APIs.

Usage 🚀

Refer to Setup Guide for installing dependecies for both Java and Python.

JAVA

There are 2 clients available with the Java SDK: SyncClient and AsyncClient

chevron-rightJava Client Codehashtag
# for async client 
import org.qyrus.ai_sdk.Clients.AsyncClient;
AsyncClient client = new AsyncClient(<API_TOKEN>, null);

# for sync client
import org.qyrus.ai_sdk.Clients.SyncClient;
SyncClient client = new SyncClient(<API_TOKEN>, null);

Using SyncClient

Here's an example of utilizing Vision Nova via publicly accessible image url to generate visual accessibility test with SyncClient.

chevron-rightJava SyncClient Codehashtag
private static void createTestVisionNovaAccessibilityTests(){

        Dotenv dotenv = Dotenv.load();
        String QYRUS_AI_SDK_API_TOKEN = dotenv.get("QYRUS_AI_SDK_API_TOKEN");


        SyncClient client = new SyncClient(QYRUS_AI_SDK_API_TOKEN, null);
        String image_url = "https://s3-us-west-2.amazonaws.com/ctc-qa-ai/ai/demo/public/images/home-loan-screenshot.png";

        long startTime = System.currentTimeMillis();
        int numberOfRequests = 2;

        for (int i = 0; i < numberOfRequests; i++) {
            try {
                VisionNovaAccessibilityTests.CreateScenariosResponse response = client.vision_nova.accessibility_tests.create(image_url);
                System.out.println("Creation Status: " + response.isOk());
                System.out.println("Creation Status: " + response.getMessage());
        
                //Show all the scenarios generated
                if (response != null && response.isOk() == true && response.getAccessibilityScenarios() != null) {
                    System.out.println("Creation Status: " + response.getVisionNovaRequestId());

                    List<VisionNovaAccessibilityTests.AccessibilityScenario> scenarios = response.getAccessibilityScenarios();

                    // Loop over the list and print out scenarios
                    for (VisionNovaAccessibilityTests.AccessibilityScenario scenario : scenarios) {
                        System.out.println("Accessibility type: " + scenario.getAccessibilityType());
                        System.out.println("Accessibility Comment: " + scenario.getAccessibilityComment());
                        
                        
                        System.out.println("--------------------------------------");
                    }

                }
            } catch (Exception e) {
                e.printStackTrace();
            }

        }
        long endTime = System.currentTimeMillis();
        System.out.println("Synchronous total time for Vision Nova with Accessibility" + numberOfRequests + " requests: " + (endTime - startTime) + " ms");
    } 

Using AsyncClient

Here's an example of utilizing Vision Nova via publicly accessible image url to generate visual accessibility test with AsyncClient.

chevron-rightJava AsyncClient Codehashtag

PYTHON

There are two clients available with the Python SDK: SyncQyrusAI and AsyncQyrusAI.

chevron-rightPython Client Codehashtag

Using SyncQyrusAI

Here's an example of utilizing Vision Nova via the publicly accessible image url to generate visual accessiblilty test with SyncQyrusAI.

chevron-rightPython SyncQyrusAI Codehashtag

Using AsyncQyrusAI

Here's an example of utilizing Vision Nova via the publicly accessible image url to generate visual accessiblilty test with AsyncQyrusAI.

chevron-rightPython AsyncQyrusAI Codehashtag

Rest APIs

  • Endpoint: POST {{GATEWAY_URL}}/vision-nova-sdk/v1/api/json-accessibility-comment

  • Headers:

    • Authorization: [Your Authorization Token]

    • Custom: [Your Custom Header Value]

  • Request Body: { "image_url": "publicly accessible image url" }

  • Response:

Last updated