Hello,
I am trying to run this script to post to facebook status but when i run the script first time it ran sucessfully but 2nd time onwards it doesnt ,i dont know why it happens but i am observing this behaviour from the time i started learning writing appium scripts to automate fb login n status posting.
Here is my script:
package com.appium.facebook.androiduiselector;
import io.appium.java_client.android.AndroidDriver;
import io.appium.java_client.android.AndroidKeyCode;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.concurrent.TimeUnit;
import org.junit.Test;
import org.openqa.selenium.remote.DesiredCapabilities;
public class FacebookLoginTest {
@Test
public void testLoginFB() throws MalformedURLException, InterruptedException
{
DesiredCapabilities capabilities = new DesiredCapabilities() ;
capabilities.setCapability(“automationName”,“Appium”);
capabilities.setCapability(“platformnName”,“Android”);
capabilities.setCapability(“platformVersion”,“5.1.1”);
capabilities.setCapability(“deviceName”,“Nexus 6” );
capabilities.setCapability(“app”,“C:\Users\Jenny\Downloads\facebook.apk”);
capabilities.setCapability(“appPackage”,“com.facebook.katana”);
capabilities.setCapability(“appActivity”, “com.facebook.katana.LoginActivity”);
AndroidDriver driver = new AndroidDriver (new URL (“http://127.0.0.1:4723/wd/hub”), capabilities) ;
driver.manage().timeouts().implicitlyWait(120,TimeUnit.SECONDS);
//automating login procedure to FB
driver.findElementByAndroidUIAutomator("new UiSelector().resourceId(\"com.facebook.katana:id/login_username\")").sendKeys("[email protected]");
driver.sendKeyEvent(AndroidKeyCode.ENTER);
driver.findElementByAndroidUIAutomator("new UiSelector().resourceId(\"com.facebook.katana:id/login_password\")").click();
driver.findElementByAndroidUIAutomator("new UiSelector().resourceId(\"com.facebook.katana:id/login_password\")").sendKeys("XXXXXX");
driver.findElementByAndroidUIAutomator("new UiSelector().resourceId(\"com.facebook.katana:id/login_login\").text(\"LOG IN\")").click();
driver.findElementByAndroidUIAutomator("new UiSelector().resourceId(\"com.facebook.katana:id/dbl_on\").text(\"OK\")").click();
driver.findElementByAndroidUIAutomator("new UiSelector().resourceId(\"com.facebook.katana:id/feed_composer_status_button\").text(\"STATUS\")").click();
// driver.findElementByAndroidUIAutomator("new UiSelector().resourceId(\"com.facebook.katana:id/status_text\")").click();
driver.findElementByAndroidUIAutomator("new UiSelector().resourceId(\"com.facebook.katana:id/status_text\").text(\"What's on your mind?\")").sendKeys("hello");
driver.findElementByAndroidUIAutomator("new UiSelector().resourceId(\"com.facebook.katana:id/composer_primary_named_button\").description(\"Post\")").click();
Thread.sleep(8000);
}
}
Appium log is same:unable to locate the element
The script is stopping at this line
driver.findElementByAndroidUIAutomator(“new UiSelector().resourceId(“com.facebook.katana:id/feed_composer_status_button”).text(“STATUS”)”).click();