We have already covered Selendroid setup for native Android apps on this article. As Selendroid can also be used for mobile web automation, we will see Selendroid setup to test hybrid/web application in this post. This setup process is performed on Android emulator. However, you can use actual device as well.
We will use TestNG framework in our setup and write a test on Selenium WebDriver using Java. For our example, we have taken Google website where we will perform a simple search operation. But before we proceed further, let’s ensure we have below prerequisites met for Selendroid setup.
Prerequisites:
- Java SDK installed in the system and JAVA_HOME configured to point to JDK.
- Android SDK installed in the system and ANDROID_HOME set.
- Selendroid client and server JAR files and TestNG JAR file.
- Eclipse (with TestNG configured)
We can now start with Selendroid setup in Eclipse. Perform below steps for it.
- Start an emulator to run your test on or connect your device to the system.
- Download Selendroid server JAR file from link specified above.
- Open Command Prompt and go to the directory where downloaded JAR file is stored.
- Run below command in Command Prompt to start Selendroid server.
- Selendroid server gets started on running the above command. To check if Selendroid server is running correctly, go to http://localhost:4444/wd/hub/status URL in your browser. It should show details similar to below screenshot.
- Create a Java project in your Eclipse and reference Selendroid client, server and TestNG JAR files.
- Create a class file in your project and write below code.
package com.selendroid.test;
import io.selendroid.SelendroidCapabilities;
import io.selendroid.SelendroidDriver;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.testng.annotations.AfterSuite;
import org.testng.annotations.BeforeSuite;
import org.testng.annotations.Test;
public class WebTest {
public WebDriver driver;
@BeforeSuite
public void setUp() throws Exception
{
DesiredCapabilities caps = SelendroidCapabilities.android();
driver = new SelendroidDriver(caps);
}
@Test
public void WebSiteTest() throws Exception
{
driver.get("http://google.com");
WebElement searchQuery = driver.findElement(By.name("q"));
searchQuery.click();
searchQuery.sendKeys("Test");
WebElement submit = driver.findElement(By.name("btnG"));
submit.click();
}
@AfterSuite
public void tearDown() throws Exception{
driver.quit();
}
}
- Run your test using TestNG. It should launch Selendroid WebView app and perform search on Google.
Now that you have setup Selendroid using above tutorial, we would love to hear your views on it via comments.
Comments
Post a Comment