Monday 4 April 2016

Appium Sample Run Code

package com.sample;
import java.io.File;


import java.net.MalformedURLException;
import java.net.URL;
import java.util.HashMap;
import java.util.concurrent.TimeUnit;

import org.junit.After;
import org.junit.Before;
import org.openqa.selenium.By;
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.android.AndroidDriver;
import org.openqa.selenium.remote.CapabilityType;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.RemoteWebDriver;
import org.testng.annotations.Test;

@Test
public class AppiumExampleTest {
WebDriver driver ;
public  void aSa() throws MalformedURLException{

    File appDir = new File("/Users/siva/git");
    File app = new File(appDir, "Sample.apk");

    DesiredCapabilities capabilities = new DesiredCapabilities();
    capabilities.setCapability("BROWSER_NAME","Android");
    capabilities.setCapability("VERSION","Android");
    capabilities.setCapability("device","Android");

 
    //mandatory capabilities
    capabilities.setCapability("deviceName","Android");
    capabilities.setCapability("platformName","Android");
capabilities.setCapability("appPackage", "com.****.***");
    capabilities.setCapability("appActivity", "com.jhonsoned.aqua.login.viewcontroller.LoginActivity");



    //other caps
    capabilities.setCapability("app", app.getAbsolutePath());
     driver =  new RemoteWebDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
 

 
}
}


Note :

AppActivty and appPackge will come automatically once u have chosen path in Appium server




Tuesday 16 February 2016

To verify whether file is downloaded or not in selenium webdriver

package com.sample;

import java.io.File;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.firefox.FirefoxProfile;
import org.testng.Assert;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;

public class FileDownloadVerify {

private WebDriver driver;

private static String downloadPath = "D:\\siva";
private String URL="http://all-free-download.com/free-photos/download/in_love_cosmos_flower_garden_220378.html";

@BeforeClass
public void testSetup() throws Exception{
driver = new FirefoxDriver(firefoxProfile());
driver.manage().window().maximize();
}

@Test
public void example_VerifyExpectedFileName() throws Exception {
driver.get(URL);
   driver.findElement(By.xpath(".//*[@id='detail_content']/div[2]/a")).click();
 
   Thread.sleep(10000);
   File getLatestFile = getLatestFilefromDir(downloadPath);
   String fileName = getLatestFile.getName();
   Assert.assertTrue(fileName.equals("in_love_cosmos_flower_garden_220378.zip"), "Downloaded file name is not matching with expected file name");
}


@AfterClass
public void tearDown() {
driver.quit();
}
public static FirefoxProfile firefoxProfile() throws Exception {

FirefoxProfile firefoxProfile = new FirefoxProfile();
firefoxProfile.setPreference("browser.download.folderList",2);
firefoxProfile.setPreference("browser.download.manager.showWhenStarting",false);
firefoxProfile.setPreference("browser.download.dir",downloadPath);
firefoxProfile.setPreference("browser.helperApps.neverAsk.saveToDisk","application/zip");

return firefoxProfile;
}
public boolean isFileDownloaded(String downloadPath, String fileName) {
boolean flag = false;
    File dir = new File(downloadPath);
    File[] dir_contents = dir.listFiles();
   
    for (int i = 0; i < dir_contents.length; i++) {
        if (dir_contents[i].getName().equals(fileName))
            return flag=true;
            }

    return flag;
}

private boolean isFileDownloaded_Ext(String dirPath, String ext){
boolean flag=false;
    File dir = new File(dirPath);
    File[] files = dir.listFiles();
    if (files == null || files.length == 0) {
        flag = false;
    }
   
    for (int i = 1; i < files.length; i++) {
    if(files[i].getName().contains(ext)) {
    flag=true;
    }
    }
    return flag;
}

private File getLatestFilefromDir(String dirPath){
    File dir = new File(dirPath);
    File[] files = dir.listFiles();
    if (files == null || files.length == 0) {
        return null;
    }

    File lastModifiedFile = files[0];
    for (int i = 1; i < files.length; i++) {
       if (lastModifiedFile.lastModified() < files[i].lastModified()) {
           lastModifiedFile = files[i];
       }
    }
    return lastModifiedFile;
}
}