How can I confirm clickability, visibility, and retrieving attributes of Flutter elements using the appium-flutter-driver

48 Views Asked by At

I am attempting to confirm the clickability and visibility of Flutter elements and retrieve certain attributes using the appium-flutter-driver. However, I am encountering an issue where it shows 'Method has not yet been implemented' How can I resolve this?

enter image description here

Code

package org.example;

import io.appium.java_client.android.AndroidDriver;
import io.github.ashwith.flutter.FlutterFinder;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.testng.annotations.Test;

import java.net.URL;
import java.time.Duration;

public class FlutterDriverAutomation {

    public static AndroidDriver driver;

    @Test
    public void test() throws Exception {

        DesiredCapabilities caps = new DesiredCapabilities();
        caps.setCapability("platformName", "Android");
        caps.setCapability("platformVersion", "10");
        caps.setCapability("deviceName", "Android SDK built for x86");
        caps.setCapability("udid", "emulator-5554");
        caps.setCapability("appPackage", "com.example.flutter_application");
        caps.setCapability("appActivity", "com.example.flutter_application.MainActivity");
        caps.setCapability("automationName", "Flutter");

        driver = new AndroidDriver(
                new URL("http://0.0.0.0:4723/wd/hub"), caps
        );

        Thread.sleep(5000);

        driver.manage().timeouts().implicitlyWait(Duration.ofSeconds(500));


        FlutterFinder finder = new FlutterFinder(driver);
        WebElement element = null;
        WebElement element1 = null;

        element = finder.byValueKey("name_input_field");
        element.sendKeys("#####TESTING######");

        Thread.sleep(5000);
        System.out.println("-------------------------------------");
        
        System.out.println("Element is display status is : " + element.isDisplayed());
        System.out.println("Element is enabled status is : " + element.isEnabled());
        
        System.out.println(element.getAttribute("text"));
        System.out.println(element.getAttribute("value"));


    }
}
0

There are 0 best solutions below