Java Code Examples for org.openqa.selenium.Dimension

The following are top voted examples for showing how to use org.openqa.selenium.Dimension. These examples are extracted from open source projects. You can vote up the examples you like and your votes will be used in our system to generate more good examples.
Example 1
Project: opentest   File: AppiumTestAction.java   View source code 7 votes vote down vote up
protected void swipeRight(MobileElement element) {
        Point point = element.getLocation();
        Point p = element.getCenter();

        Dimension size = driver.manage().window().getSize();

        int screenWidth = (int) (size.width * 0.90);
        // int elementX = point.getX();
        int elementX = p.getX();

        int endY = 0;
        int endX = element.getSize().getWidth();
//        Logger.debug("Device height:" + size.getHeight() + "$$$ Device width:" + size.getWidth());
//        Logger.debug("Element X:" + point.getX() + "$$$ Element Y:" + point.getY());
//        Logger.debug("Element Height:" + element.getSize().height + "$$$$ Element Width:" + element.getSize().width);
//        Logger.debug("end X:" + endX + "$$$$end Y:" + endY);
        TouchAction action = new TouchAction((MobileDriver) driver);
        //action.press(element).moveTo(endX, endY).release().perform();
        action.press((int) (point.getX() + (element.getSize().getWidth() * 0.10)), element.getCenter().getY()).moveTo((int) (screenWidth - (point.getX() + (element.getSize().getWidth() * 0.10))), endY).release().perform();

    }
 
Example 2
Project: che   File: SeleniumWebDriver.java   View source code 7 votes vote down vote up
private RemoteWebDriver doCreateDriver(URL webDriverUrl) {
  DesiredCapabilities capability;

  switch (browser) {
    case GOOGLE_CHROME:
      ChromeOptions options = new ChromeOptions();
      options.addArguments("--no-sandbox");
      options.addArguments("--dns-prefetch-disable");

      capability = DesiredCapabilities.chrome();
      capability.setCapability(ChromeOptions.CAPABILITY, options);
      break;

    default:
      capability = DesiredCapabilities.firefox();
      capability.setCapability("dom.max_script_run_time", 240);
      capability.setCapability("dom.max_chrome_script_run_time", 240);
  }

  RemoteWebDriver driver = new RemoteWebDriver(webDriverUrl, capability);
  driver.manage().window().setSize(new Dimension(1920, 1080));

  return driver;
}
 
Example 3
Project: che   File: TestWebElementRenderChecker.java   View source code 7 votes vote down vote up
private void waitElementIsStatic(FluentWait<WebDriver> webDriverWait, WebElement webElement) {
  AtomicInteger sizeHashCode = new AtomicInteger();

  webDriverWait.until(
      (ExpectedCondition<Boolean>)
          driver -> {
            Dimension newDimension = waitAndGetWebElement(webElement).getSize();

            if (dimensionsAreEquivalent(sizeHashCode, newDimension)) {
              return true;
            } else {
              sizeHashCode.set(getSizeHashCode(newDimension));
              return false;
            }
          });
}
 
Example 4
Project: phoenix.webui.framework   File: TargetElementMark.java   View source code 6 votes vote down vote up
@Override
public void mark(WebElement ele, File file) throws IOException
{
	BufferedImage bufImg = ImageIO.read(file);
	
	try
	{
		WebElement webEle = (WebElement) ele;
		Point loc = webEle.getLocation();
		Dimension size = webEle.getSize();
		
		Graphics2D g = bufImg.createGraphics();
		g.setColor(Color.red);
		g.drawRect(loc.getX(), loc.getY(), size.getWidth(), size.getHeight());
	}
	catch(StaleElementReferenceException se)
	{
	}
}
 
Example 5
Project: marathonv5   File: JavaDriverTest.java   View source code 6 votes vote down vote up
public void windowSetSize() throws Throwable {
    driver = new JavaDriver();
    SwingUtilities.invokeAndWait(new Runnable() {
        @Override public void run() {
            frame.setLocationRelativeTo(null);
            frame.setVisible(true);
        }
    });
    Window window = driver.manage().window();
    Dimension actual = window.getSize();
    AssertJUnit.assertNotNull(actual);
    java.awt.Dimension expected = EventQueueWait.call(frame, "getSize");
    AssertJUnit.assertEquals(expected.width, actual.width);
    AssertJUnit.assertEquals(expected.height, actual.height);
    window.setSize(new Dimension(expected.width * 2, expected.height * 2));
    actual = window.getSize();
    AssertJUnit.assertEquals(expected.width * 2, actual.width);
    AssertJUnit.assertEquals(expected.height * 2, actual.height);
}
 
Example 6
Project: WebAndAppUITesting   File: IphoneBaseOpt.java   View source code 6 votes vote down vote up
/**
 * 判断要点击的元素是否被其它元素覆盖
 * 
 * @param clickBy
 * @param coverBy
 * @return
 */
public boolean isCover(By clickBy, By coverBy) {

	MobileElement clickElement = getDriver().findElement(clickBy);
	MobileElement coverElement = getDriver().findElement(coverBy);

	// 获取控件开始位置高度
	Point clickstart = clickElement.getLocation();
	int clickStartY = clickstart.y;

	Point coverstart = coverElement.getLocation();
	int coverStartY = coverstart.y;

	// 获取控件高度
	Dimension firstq = clickElement.getSize();
	int height = firstq.getHeight();

	// 控件中间高度是否大于底部高度
	if (clickStartY + height / 2 >= coverStartY) {
		return true;
	}
	return false;
}
 
Example 7
Project: WebAndAppUITesting   File: AndroidBaseOpt.java   View source code 6 votes vote down vote up
/**
 * 判断要点击的元素是否被其它元素覆盖
 * 
 * @param clickBy
 * @param coverBy
 * @return
 */
public boolean isCover(By clickBy, By coverBy) {

	MobileElement clickElement = getDriver().findElement(clickBy);
	MobileElement coverElement = getDriver().findElement(coverBy);

	// 获取控件开始位置高度
	Point clickstart = clickElement.getLocation();
	int clickStartY = clickstart.y;

	Point coverstart = coverElement.getLocation();
	int coverStartY = coverstart.y;

	// 获取控件高度
	Dimension firstq = clickElement.getSize();
	int height = firstq.getHeight();

	// 控件中间高度是否大于底部高度
	if (clickStartY + height / 2 >= coverStartY) {

		return true;
	}
	return false;
}
 
Example 8
Project: coteafs-appium   File: DeviceActions.java   View source code 6 votes vote down vote up
private TouchAction swipeTo (final SwipeDirection direction, final SwipeDistance distance) {
	final Dimension size = this.driver.manage ()
		.window ()
		.getSize ();
	final int startX = size.getWidth () / 2;
	final int startY = size.getHeight () / 2;
	final int endX = (int) (startX * direction.getX () * distance.getDistance ());
	final int endY = (int) (startY * direction.getY () * distance.getDistance ());
	final int beforeSwipe = this.device.getSetting ()
		.getDelayBeforeSwipe ();
	final int afterSwipe = this.device.getSetting ()
		.getDelayAfterSwipe ();
	final TouchAction returnAction = new TouchAction (this.driver);
	returnAction.press (startX, startY)
		.waitAction (ofSeconds (beforeSwipe))
		.moveTo (endX, endY)
		.waitAction (ofSeconds (afterSwipe))
		.release ();
	return returnAction;
}
 
Example 9
Project: opentest   File: AppiumTestAction.java   View source code 6 votes vote down vote up
protected void swipeDown(MobileElement element) {
        Point point = element.getLocation();
        Dimension size = driver.manage().window().getSize();

        int screenHeight = (int) (size.height * 0.90);
        int elementY = point.getY();

        int endX = 0;
        int endY = ((int) screenHeight - elementY);
//        Logger.debug("Device height:" + size.getHeight() + "$$$ Device width:" + size.getWidth());
//        Logger.debug("Element X:" + point.getX() + "$$$ Element Y:" + point.getY());
//        Logger.debug("Element Height:" + element.getSize().height + "$$$$ Element Width:" + element.getSize().width);
//        Logger.debug("end X:" + endX + "$$$$end Y:" + endY);
        TouchAction action = new TouchAction((MobileDriver) driver);
        //action.press(element).moveTo(endX, endY).release().perform();
        action.press(element.getCenter().getX(), element.getCenter().getY()).moveTo(endX, screenHeight - element.getCenter().getY()).release().perform();

    }
 
Example 10
Project: xtf   File: WebDriverService.java   View source code 6 votes vote down vote up
private WebDriver createWebDriver(final Consumer<DesiredCapabilities> desiredCapabilities) {

		String hostName = GhostDriverService.get().getHostName();

		DesiredCapabilities capabilities = DesiredCapabilities.phantomjs();
		if (desiredCapabilities != null) {
			desiredCapabilities.accept(capabilities);
		}
		try {
			WebDriver driver = new RemoteWebDriver(new URL("http://localhost:" + GhostDriverService.get().getLocalPort() + "/"), capabilities);
			driver.manage().window().setSize(new Dimension(1920, 1080));
			return driver;
		} catch (MalformedURLException e) {
			throw new IllegalStateException("Wrong hostName '" + hostName + "', possibly GhostDriverService::start not called ", e);
		}
	}
 
Example 11
Project: Cognizant-Intelligent-Test-Scripter   File: Basic.java   View source code 6 votes vote down vote up
@Action(object = ObjectType.BROWSER, desc = "Changes the browser size into [<Data>]", input = InputType.YES)
public void setBrowserSize() {
    try {
        if (Data.matches("\\d*(x|,| )\\d*")) {
            String size = Data.replaceFirst("(x|,| )", " ");
            String[] sizes = size.split(" ", 2);
            Driver.manage().window().setSize(new Dimension(Integer.parseInt(sizes[0]), Integer.parseInt(sizes[1])));
            Report.updateTestLog(Action, " Browser is resized to " + Data,
                    Status.DONE);
        } else {
            Report.updateTestLog(Action, " Invalid Browser size [" + Data + "]",
                    Status.DEBUG);
        }
    } catch (Exception ex) {
        Report.updateTestLog(Action, "Unable to resize the Window ",
                Status.FAIL);
        Logger.getLogger(Basic.class.getName()).log(Level.SEVERE, null, ex);
    }
}
 
Example 12
Project: mobileAutomation   File: Driver.java   View source code 6 votes vote down vote up
/**
 * Swipe from xStart to xStop on the horizontal center of the screen.
 * 
 * @param xStart - start point in percents 
 * @param xStop - end point in percents 
 * @param speed - swipe speed
 */
public static void horizontalSwipe(double xStart, double xStop, int speed)
{
	Dimension size = driver.manage().window().getSize();
	((AppiumDriver<?>) driver).swipe(

			// start point
			(int)xStart,
			size.height/2,
			
			// end point
			(int)xStop,
			size.height/2,

			speed);
	ThreadUtils.sleepQuiet(2000);
}
 
Example 13
Project: mobileAutomation   File: Driver.java   View source code 6 votes vote down vote up
/**
 * Swipe from yStart to yStop on the vertical center of the screen.
 * 
 * @param yStart - start point in percents  
 * @param yStop - end point in percents 
 * @param speed - swipe speed
 */
public static void verticalSwipe(double yStart, double yStop, int speed)
{
	Dimension size = driver.manage().window().getSize();
	((AppiumDriver<?>) driver).swipe(

			// start point
			size.width/2,
			(int)(size.height*yStart),

			// end point
			size.width/2,
			(int)(size.height*yStop), 

			speed);
	ThreadUtils.sleepQuiet(2000);
}
 
Example 14
Project: bobcat   File: DroppableWebElement.java   View source code 6 votes vote down vote up
/**
 * @return Point in the middle of the drop area.
 */
@Override
public Point getCurrentLocation() {
  Point inViewPort = null;
  switcher.switchTo(getFramePath());
  try {
    Dimension size = dropArea.getSize();
    inViewPort = ((Locatable) dropArea).getCoordinates().inViewPort()
        .moveBy(size.getWidth() / 2, size.getHeight() / 2);
  } finally {
    switcher.switchBack();
  }
  return inViewPort;
}
 
Example 15
Project: xframium-java   File: ReportingWebElementAdapter.java   View source code 6 votes vote down vote up
@Override
public Dimension getSize()
{
    Dimension returnValue = null;
    webDriver.getExecutionContext().startStep( createStep( "AT" ), null, null );
    try
    {
        returnValue = baseElement.getSize();
    }
    catch( Exception e )
    {
        webDriver.getExecutionContext().completeStep( StepStatus.FAILURE, e );
    }
    
    webDriver.getExecutionContext().completeStep( StepStatus.SUCCESS, null );
    
    return returnValue;
}
 
Example 16
Project: xframium-java   File: CachedWebElement.java   View source code 6 votes vote down vote up
@Override
public Dimension getSize()
{
	try
	{
		String height = null, width = null;
		
		height=getAttribute( "height" );
		width=getAttribute( "width" );
		if ( height != null && width != null )
		    return new Dimension( Integer.parseInt( width ), Integer.parseInt( height ) );
		else
		    return new Dimension( 0, 0 );
	}
	catch( Exception e )
	{
		return webDriver.findElement( by ).getSize();
	}
	
	
}
 
Example 17
Project: xframium-java   File: DeviceWebDriver.java   View source code 6 votes vote down vote up
public void get( String url )
{
    setLastAction();
    webDriver.get( url );
    
    try
    {
        double outerHeight = Integer.parseInt( executeScript( "return window.outerHeight;" ) + "" );
        double outerWidth = Integer.parseInt( executeScript( "return window.outerWidth;" ) + "" );
        
        Dimension windowSize = manage().window().getSize();
        Object f = executeScript( "return window.outerHeight;" );
        heightModifier = (double) windowSize.getHeight() / outerHeight;
        widthModifier = (double) windowSize.getWidth() / outerWidth;
        
    }
    catch( Exception e )
    {
        log.warn( "Could not extract height/width modifiers" );
        heightModifier = 1;
        widthModifier = 1;
    }
}
 
Example 18
Project: xframium-java   File: SELENIUMCloudActionProvider.java   View source code 6 votes vote down vote up
@Override
public boolean popuplateDevice( DeviceWebDriver webDriver, String deviceId, Device device, String xFID )
{
    String uAgent = (String) webDriver.executeScript("return navigator.userAgent;");
    UserAgent userAgent = new UserAgent( uAgent );
    device.setBrowserName( userAgent.getBrowser().getName() );
    device.setManufacturer( userAgent.getOperatingSystem().getManufacturer().getName() );
    String[] osSplit = userAgent.getOperatingSystem().getName().split( " " );
    device.setOs( osSplit[ 0 ].toUpperCase() );
    if ( osSplit.length > 1 )
        device.setOsVersion( userAgent.getOperatingSystem().getName().split( " " )[ 1 ].toUpperCase() );
    
    Dimension winDim = webDriver.manage().window().getSize();
    if ( winDim != null )
        device.setResolution( winDim.getWidth() + " x " + winDim.height );
    else
        device.setResolution( null );
    
    return true;
}
 
Example 19
Project: xframium-java   File: SAUCELABSCloudActionProvider.java   View source code 6 votes vote down vote up
@Override
public boolean popuplateDevice( DeviceWebDriver webDriver, String deviceId, Device device, String xFID )
{
    String uAgent = (String) webDriver.executeScript("return navigator.userAgent;");
    UserAgent userAgent = new UserAgent( uAgent );
    device.setBrowserName( userAgent.getBrowser().getName() );
    device.setManufacturer( userAgent.getOperatingSystem().getManufacturer().getName() );
    String[] osSplit = userAgent.getOperatingSystem().getName().split( " " );
    device.setOs( osSplit[ 0 ].toUpperCase() );
    if ( osSplit.length > 1 )
        device.setOsVersion( userAgent.getOperatingSystem().getName().split( " " )[ 1 ].toUpperCase() );
    
    Dimension winDim = webDriver.manage().window().getSize();
    if ( winDim != null )
        device.setResolution( winDim.getWidth() + " x " + winDim.height );
    else
        device.setResolution( null );
    
    return true;
}
 
Example 20
Project: xframium-java   File: PressGesture.java   View source code 6 votes vote down vote up
@Override
protected boolean _executeGesture( WebDriver webDriver )
{
	AppiumDriver appiumDriver = null;
	
	if ( webDriver instanceof AppiumDriver )
		appiumDriver = (AppiumDriver) webDriver;
	else if ( webDriver instanceof NativeDriverProvider )
	{
		NativeDriverProvider nativeProvider = (NativeDriverProvider) webDriver;
		if ( nativeProvider.getNativeDriver() instanceof AppiumDriver )
			appiumDriver = (AppiumDriver) nativeProvider.getNativeDriver();
		else
			throw new IllegalArgumentException( "Unsupported Driver Type " + webDriver );
	}
	Dimension screenDimension = appiumDriver.manage().window().getSize();
	
	Point pressPosition = getActualPoint( getPressPosition(), screenDimension );
	
	TouchAction swipeAction = new TouchAction( appiumDriver );
	swipeAction.press(  pressPosition.getX(), pressPosition.getY() ).waitAction( Duration.ofMillis( getPressLength() ) ).release().perform();
	
	return true;
}
 
Example 21
Project: xframium-java   File: SwipeGesture.java   View source code 6 votes vote down vote up
@Override
protected boolean _executeGesture( WebDriver webDriver )
{
	AppiumDriver appiumDriver = null;
	
	if ( webDriver instanceof AppiumDriver )
		appiumDriver = (AppiumDriver) webDriver;
	else if ( webDriver instanceof NativeDriverProvider )
	{
		NativeDriverProvider nativeProvider = (NativeDriverProvider) webDriver;
		if ( nativeProvider.getNativeDriver() instanceof AppiumDriver )
			appiumDriver = (AppiumDriver) nativeProvider.getNativeDriver();
		else
			throw new IllegalArgumentException( "Unsupported Driver Type " + webDriver );
	}
	Dimension screenDimension = appiumDriver.manage().window().getSize();
	
	Point actualStart = getActualPoint( getSwipeStart(), screenDimension );
	Point actualEnd = getActualPoint( getSwipeEnd(), screenDimension );
	
	TouchAction swipeAction = new TouchAction( appiumDriver );
	swipeAction.press( actualStart.getX(), actualStart.getY() ).moveTo( actualEnd.getX(), actualEnd.getY() ).release().perform();
	
	return true;
}
 
Example 22
Project: menggeqa   File: AppiumDriver.java   View source code 6 votes vote down vote up
/**
 * Convenience method for pinching an element on the screen.
 * "pinching" refers to the action of two appendages pressing the
 * screen and sliding towards each other.
 * NOTE:
 * This convenience method places the initial touches around the element, if this would
 * happen to place one of them off the screen, appium with return an outOfBounds error.
 * In this case, revert to using the MultiTouchAction api instead of this method.
 *
 * @param el The element to pinch.
 */
public void pinch(WebElement el) {
    MultiTouchAction multiTouch = new MultiTouchAction(this);

    Dimension dimensions = el.getSize();
    Point upperLeft = el.getLocation();
    Point center = new Point(upperLeft.getX() + dimensions.getWidth() / 2,
        upperLeft.getY() + dimensions.getHeight() / 2);
    int yOffset = center.getY() - upperLeft.getY();

    TouchAction action0 =
        new TouchAction(this).press(el, center.getX(), center.getY() - yOffset).moveTo(el)
            .release();
    TouchAction action1 =
        new TouchAction(this).press(el, center.getX(), center.getY() + yOffset).moveTo(el)
            .release();

    multiTouch.add(action0).add(action1);

    multiTouch.perform();
}
 
Example 23
Project: menggeqa   File: AppiumDriver.java   View source code 6 votes vote down vote up
/**
 * Convenience method for "zooming in" on an element on the screen.
 * "zooming in" refers to the action of two appendages pressing the screen and sliding
 * away from each other.
 * NOTE:
 * This convenience method slides touches away from the element, if this would happen
 * to place one of them off the screen, appium will return an outOfBounds error.
 * In this case, revert to using the MultiTouchAction api instead of this method.
 *
 * @param el The element to pinch.
 */
public void zoom(WebElement el) {
    MultiTouchAction multiTouch = new MultiTouchAction(this);

    Dimension dimensions = el.getSize();
    Point upperLeft = el.getLocation();
    Point center = new Point(upperLeft.getX() + dimensions.getWidth() / 2,
        upperLeft.getY() + dimensions.getHeight() / 2);
    int yOffset = center.getY() - upperLeft.getY();

    TouchAction action0 = new TouchAction(this).press(center.getX(), center.getY())
        .moveTo(el, center.getX(), center.getY() - yOffset).release();
    TouchAction action1 = new TouchAction(this).press(center.getX(), center.getY())
        .moveTo(el, center.getX(), center.getY() + yOffset).release();

    multiTouch.add(action0).add(action1);

    multiTouch.perform();
}
 
Example 24
Project: awplab-core   File: SeleniumProvider.java   View source code 6 votes vote down vote up
@Override
public AutoClosableWebDriver wrapDriver(WebDriver webDriver) {
    AutoClosableWebDriver autoClosableWebDriver = new AutoClosableWebDriver(webDriver);
    if (waitUntilTimeout != null && waitUntilTimeoutUnit != null) {
        autoClosableWebDriver.setDefaultWaitUntilTimeout(waitUntilTimeout);
        autoClosableWebDriver.setDefaultWaitUntilTimeoutUnit(TimeUnit.valueOf(waitUntilTimeoutUnit));
    }
    if (implicityWaitTime != null && implicityWaitTimeUnit != null) {
        autoClosableWebDriver.manage().timeouts().implicitlyWait(implicityWaitTime, TimeUnit.valueOf(implicityWaitTimeUnit));
    }
    if (pageLoadTimeout != null && pageLoadTimeoutUnit != null) {
        autoClosableWebDriver.manage().timeouts().pageLoadTimeout(pageLoadTimeout, TimeUnit.valueOf(pageLoadTimeoutUnit));
    }
    if (scriptTimeout != null && scriptTimeoutUnit != null) {
        autoClosableWebDriver.manage().timeouts().setScriptTimeout(scriptTimeout, TimeUnit.valueOf(scriptTimeoutUnit));
    }
    if (windowHeight != null && windowWidth != null) {
        autoClosableWebDriver.manage().window().setSize(new Dimension(windowWidth, windowHeight));
    }

    return autoClosableWebDriver;
}
 
Example 25
Project: alimama   File: SeleniumUtil.java   View source code 6 votes vote down vote up
public static BufferedImage createElementImage(WebDriver driver,WebElement webElement)  
          throws IOException {  
try{

          // 获得webElement的位置和大小。  
          Point location = webElement.getLocation();  
          Dimension size = webElement.getSize();  
          // 创建全屏截图。  
          BufferedImage originalImage =  
          ImageIO.read(new ByteArrayInputStream(takeScreenshot(driver)));  
          // 截取webElement所在位置的子图。  
          BufferedImage croppedImage = originalImage.getSubimage(  
          location.getX(),  
          location.getY(),  
          size.getWidth(),  
          size.getHeight());  
          return croppedImage;  
}catch(Exception e){
 e.printStackTrace();
}
return null;
          }
 
Example 26
Project: aet   File: ScreenCollector.java   View source code 6 votes vote down vote up
private byte[] getImagePart(byte[] fullPage, WebElement webElement)
    throws IOException, ProcessingException {
  InputStream in = new ByteArrayInputStream(fullPage);
  try {
    BufferedImage fullImg = ImageIO.read(in);
    Point point = webElement.getLocation();
    Dimension size = webElement.getSize();
    BufferedImage screenshotSection = fullImg.getSubimage(point.getX(), point.getY(),
        size.getWidth(), size.getHeight());
    return bufferedImageToByteArray(screenshotSection);
  } catch (IOException e) {
    throw new ProcessingException("Unable to create image from taken screenshot", e);
  } finally {
    IOUtils.closeQuietly(in);
  }
}
 
Example 27
Project: hugegherkin   File: BrowserClass.java   View source code 6 votes vote down vote up
/**
 * Example: =1204,1024
 */
@Autowired
public BrowserClass(@Value("${browser.web}") final String browserWebPropertyStr,
                    @Value("${browser.tablet}") final String browserTabletPropertyStr,
                    @Value("${browser.mobile}") final String browserMobilePropertyStr,
                    @Value("${browser.phantom}") final String browserPhantomPropertyStr) {
    List<Integer> browserWebProperty = stringToInts(browserWebPropertyStr);
    List<Integer> browserTabletProperty = stringToInts(browserTabletPropertyStr);
    List<Integer> browserMobileProperty = stringToInts(browserMobilePropertyStr);
    List<Integer> browserPhantomProperty = stringToInts(browserPhantomPropertyStr);


    browserClassMap.put(BrowserType.WEB, new Dimension(browserWebProperty.get(0), browserWebProperty.get(1)));
    browserClassMap.put(BrowserType.TABLET, new Dimension(browserTabletProperty.get(0), browserTabletProperty.get(1)));
    browserClassMap.put(BrowserType.MOBILE, new Dimension(browserMobileProperty.get(0), browserMobileProperty.get(1)));
    browserClassMap.put(BrowserType.PHANTOM, new Dimension(browserPhantomProperty.get(0), browserPhantomProperty.get(1)));

}
 
Example 28
Project: web-test-framework   File: TestCaseContextTest.java   View source code 6 votes vote down vote up
/**
 *
 */
@Test(groups = "local")
  public void testSetWindowSize() {
      DriverFactory factory = new DriverFactory();
      Dimension dimension = new Dimension(400, 600);

      TestCaseContext context = new TestCaseContext();
      context.parameters()
              .setBrowserVersionPlatform(BrowserVersionPlatform.WIN7FF)
              .setWindowSize(dimension);
      context.setDriverFactory(factory);

      Driver driver = context.getDriver();

      Dimension actualDimension = driver.manage().window().getSize();
      Assert.assertEquals(actualDimension.height, dimension.height);
      Assert.assertEquals(actualDimension.width, dimension.width);

      driver.quit();
  }
 
Example 29
Project: edx-app-android   File: NativeAppDriver.java   View source code 6 votes vote down vote up
/**
 * Wait till the element is displayed and swipe till the particular time
 * slot
 * 
 * @param id
 *            - id of the element
 */
public void swipe(String id) {
	try {
		if (isAndroid()) {
			new WebDriverWait(appiumDriver, 20).until(ExpectedConditions
					.presenceOfElementLocated(By.id(id)));
			Dimension dimension = appiumDriver.manage().window().getSize();
			int ht = dimension.height;
			int width = dimension.width;
			appiumDriver.swipe((width / 2), (ht / 4), (width / 2),
					(ht / 2), 1000);
		} else {
			new WebDriverWait(appiumDriver, 20).until(ExpectedConditions
					.presenceOfElementLocated(By.id(id)));
			if (deviceName.equalsIgnoreCase("iphone 5")) {
				appiumDriver.swipe((int) 0.1, 557, 211, 206, 500);
			} else if (deviceName.equalsIgnoreCase("iphone 6")) {
				appiumDriver.swipe((int) 0.1, 660, 50, 50, 500);
			}
		}
	} catch (Throwable e) {
		Reporter.log("Element by Id " + id + " not visible");
		captureScreenshot();
		throw e;
	}
}
 
Example 30
Project: appformer   File: PerspectiveSaveRestoreTest.java   View source code 6 votes vote down vote up
@Test
public void testResizeWestPanel() throws Exception {
    WebElement splitterDragHandle = driver.findElement(By.className("gwt-SplitLayoutPanel-HDragger"));

    Actions dragAndDrop = new Actions(driver);
    dragAndDrop.dragAndDropBy(splitterDragHandle,
                              123,
                              0);
    dragAndDrop.perform();

    ResizeWidgetWrapper westScreen = new ResizeWidgetWrapper(driver,
                                                             "west");
    Dimension westScreenNewSize = westScreen.getReportedSize();

    driver.get(baseUrl + "#" + DefaultPerspectiveActivity.class.getName());
    waitForDefaultPerspective();

    driver.get(baseUrl + "#" + NonTransientMultiPanelPerspective.class.getName());
    ResizeWidgetWrapper westScreenReloaded = new ResizeWidgetWrapper(driver,
                                                                     "west");
    assertEquals(westScreenNewSize,
                 westScreenReloaded.getReportedSize());
}
 
Example 31
Project: appformer   File: WorkbenchResizeTest.java   View source code 6 votes vote down vote up
@Test
public void testListPerspectiveSizeWithNestedPanels() throws Exception {
    driver.get(baseUrl + "#" + ListPerspectiveActivity.class.getName());
    ResizeWidgetWrapper widgetWrapper = new ResizeWidgetWrapper(driver,
                                                                "listPerspectiveDefault");

    TopHeaderWrapper topHeaderWrapper = new TopHeaderWrapper(driver);
    topHeaderWrapper.addPanelToRoot(CompassPosition.WEST,
                                    MultiListWorkbenchPanelPresenter.class,
                                    ResizeTestScreenActivity.class,
                                    "id",
                                    "resize1");

    Dimension sizeAfterWestPanelAdded = widgetWrapper.getActualSize();
    topHeaderWrapper.addPanelToRoot(CompassPosition.EAST,
                                    MultiListWorkbenchPanelPresenter.class,
                                    ResizeTestScreenActivity.class,
                                    "id",
                                    "resize2");

    Dimension sizeAfterBothPanelsAdded = widgetWrapper.getActualSize();

    assertTrue(sizeAfterWestPanelAdded.width < WINDOW_WIDTH);
    assertTrue(sizeAfterBothPanelsAdded.width < sizeAfterWestPanelAdded.width);
}
 
Example 32
Project: appformer   File: MaximizePanelTest.java   View source code 6 votes vote down vote up
@Test
public void maximizeButtonShouldWorkOnTabbedPanel() throws Exception {
    MaximizeTestScreenWrapper tabPanelScreen4 =
            new MaximizeTestScreenWrapper(driver,
                                          MaximizeTestPerspective.TAB_PANEL_SCREEN_4_ID);
    Dimension reportedSizeBefore = tabPanelScreen4.getReportedSize();

    tabPanel.clickMaximizeButton();

    Dimension reportedSizeAfter = tabPanelScreen4.getReportedSize();
    assertBigger(reportedSizeBefore,
                 reportedSizeAfter);
    assertObscuredBy(tabPanel,
                     listPanel);
    assertObscuredBy(tabPanel,
                     simplePanel);
}
 
Example 33
Project: appformer   File: MaximizePanelTest.java   View source code 6 votes vote down vote up
@Test
public void maximizeButtonShouldWorkOnListPanel() throws Exception {
    MaximizeTestScreenWrapper listPanelScreen2 =
            new MaximizeTestScreenWrapper(driver,
                                          MaximizeTestPerspective.LIST_PANEL_SCREEN_2_ID);
    Dimension reportedSizeBefore = listPanelScreen2.getReportedSize();

    listPanel.clickMaximizeButton();

    Dimension reportedSizeAfter = listPanelScreen2.getReportedSize();
    assertBigger(reportedSizeBefore,
                 reportedSizeAfter);
    assertObscuredBy(listPanel,
                     tabPanel);
    assertObscuredBy(listPanel,
                     simplePanel);
}
 
Example 34
Project: appformer   File: MaximizePanelTest.java   View source code 6 votes vote down vote up
@Test
public void maximizeButtonShouldWorkOnSimplePanel() throws Exception {
    MaximizeTestScreenWrapper simplePanelScreen5 =
            new MaximizeTestScreenWrapper(driver,
                                          MaximizeTestPerspective.SIMPLE_PANEL_SCREEN_5_ID);
    Dimension reportedSizeBefore = simplePanelScreen5.getReportedSize();

    simplePanel.clickMaximizeButton();

    Thread.sleep(3000);
    Dimension reportedSizeAfter = simplePanelScreen5.getReportedSize();
    assertBigger(reportedSizeBefore,
                 reportedSizeAfter);
    assertObscuredBy(simplePanel,
                     tabPanel);
    assertObscuredBy(simplePanel,
                     listPanel);
}
 
Example 35
Project: appformer   File: MaximizePanelTest.java   View source code 6 votes vote down vote up
@Test
public void maximizedTabPanelShouldTrackWindowSize() throws Exception {
    MaximizeTestScreenWrapper tabPanelScreen4 =
            new MaximizeTestScreenWrapper(driver,
                                          MaximizeTestPerspective.TAB_PANEL_SCREEN_4_ID);

    tabPanel.clickMaximizeButton();

    Dimension originalMaximizedSize = tabPanelScreen4.getReportedSize();
    driver.manage().window().setSize(new Dimension(WINDOW_WIDTH + 50,
                                                   WINDOW_HEIGHT - 40));
    new WebDriverWait(driver,
                      5)
            .until(reportedSizeIs(tabPanelScreen4,
                                  new Dimension(originalMaximizedSize.width + 50,
                                                originalMaximizedSize.height - 40)));
}
 
Example 36
Project: appformer   File: MaximizePanelTest.java   View source code 6 votes vote down vote up
@Test
public void maximizedListPanelShouldTrackWindowSize() throws Exception {
    MaximizeTestScreenWrapper listPanelScreen2 =
            new MaximizeTestScreenWrapper(driver,
                                          MaximizeTestPerspective.LIST_PANEL_SCREEN_2_ID);

    listPanel.clickMaximizeButton();

    Dimension originalMaximizedSize = listPanelScreen2.getReportedSize();
    driver.manage().window().setSize(new Dimension(WINDOW_WIDTH + 50,
                                                   WINDOW_HEIGHT - 40));
    new WebDriverWait(driver,
                      5)
            .until(reportedSizeIs(listPanelScreen2,
                                  new Dimension(originalMaximizedSize.width + 50,
                                                originalMaximizedSize.height - 40)));
}
 
Example 37
Project: hifive-pitalium   File: PtlWebDriverFactory.java   View source code 6 votes vote down vote up
/**
 * 初期設定(baseUrl、タイムアウト時間、ウィンドウサイズ)済のWebDriverを取得します。
 * 
 * @return WebDriver
 */
public PtlWebDriver getDriver() {
	synchronized (PtlWebDriverFactory.class) {
		LOG.debug("[Get WebDriver] create new session.");

		URL url = getGridHubURL();
		PtlWebDriver driver = createWebDriver(url);
		driver.setEnvironmentConfig(environmentConfig);
		driver.setBaseUrl(testAppConfig.getBaseUrl());
		driver.manage().timeouts().implicitlyWait(environmentConfig.getMaxDriverWait(), TimeUnit.SECONDS)
				.setScriptTimeout(environmentConfig.getScriptTimeout(), TimeUnit.SECONDS);
		if (!isMobile()) {
			driver.manage().window()
					.setSize(new Dimension(testAppConfig.getWindowWidth(), testAppConfig.getWindowHeight()));
		}

		LOG.debug("[Get WebDriver] new session created. ({})", driver);
		return driver;
	}
}
 
Example 38
Project: hifive-pitalium   File: ExcludeSingleElementTest.java   View source code 6 votes vote down vote up
/**
 * 単体要素撮影時に、小数点以下がある幅を持つ単体要素を指定して除外する。
 *
 * @ptl.expect 除外領域が正しく保存されていること。
 */
@Test
public void singleTestWithDecimal() {
	openBasicColorPage();
	driver.manage().window().setSize(new Dimension(1100, (int) driver.getWindowHeight()));

	ScreenshotArgument arg = ScreenshotArgument.builder("s").addNewTarget().addExcludeById("colorColumn1").build();
	assertionView.assertView(arg);

	// Check
	Rect rect = getRectById("colorColumn1");
	TargetResult result = loadTargetResults("s").get(0);
	assertThat(result.getExcludes(), hasSize(1));

	RectangleArea area = result.getExcludes().get(0).getRectangle();
	RectangleArea expectArea = rect.toExcludeRect().toRectangleArea();
	assertThat(area, is(expectArea));
}
 
Example 39
Project: hifive-pitalium   File: TakeEntirePageScreenshotTest.java   View source code 6 votes vote down vote up
/**
 * 十分な高さにしてスクロールが出ない状態でbodyのtakeScreenshotを実行するテスト.<br>
 * 前提条件:なし<br>
 * 実行環境:IE7~11/FireFox/Chrome/Android 2.3, 4.0, 4.4/iOS 8.1<br>
 * 期待結果:結果オブジェクト(ScrrenshotResult)に想定通りの値が入っている<br>
 *        また、全体の画像とbodyの画像が取得でき、それらをpersistすると画像ファイルが生成される。<br>
 *        これらの画像の内容は目視で確認を行うこと。
 * 
 * @throws IOException
 */
@Test
public void specifyTargetBodyWithoutScroll() throws IOException {
	String platformName = capabilities.getPlatformName();
	if (!"iOS".equals(platformName) && !"android".equalsIgnoreCase(platformName)) {
		driver.manage().window().setSize(new Dimension(1280, 2500));
	}

	driver.get(TEST_TOP_PAGE_URL);

	PtlWebDriverWait wait = new PtlWebDriverWait(driver, 30);
	wait.untilLoad();

	ScreenshotResult result = driver.takeScreenshot("topPage");
	assertScreenshotResult(result, "specifyTargetBodyWithoutScroll");
}
 
Example 40
Project: hifive-pitalium   File: AssertViewOfEntirePageTest.java   View source code 6 votes vote down vote up
/**
 * 十分な高さにしてスクロールが出ない状態でbodyのassertViewを実行するテスト.<br>
 * 前提条件:なし<br>
 * 実行環境:IE7~11/FireFox/Chrome/Android 2.3, 4.0, 4.4/iOS 8.1<br>
 * 期待結果:実行したタイムスタンプのフォルダ内にspecifyTargetBodyWithoutScroll_topPage_WINDOWS_(browser name).pngが生成される<br>
 *        仕様通りのresult.jsonと座標用のjsonファイルが生成される<br>
 *        RUN_TESTモードの場合、assertViewの比較で一致し、compareResultがtrueとなる
 */
@Test
public void specifyTargetBodyWithoutScroll() {
	String platformName = capabilities.getPlatformName();
	if (!"iOS".equals(platformName) && !"android".equalsIgnoreCase(platformName)) {
		driver.manage().window().setSize(new Dimension(1280, 2500));
	}

	driver.get(URL_TOP_PAGE);

	PtlWebDriverWait wait = new PtlWebDriverWait(driver, 30);
	wait.untilLoad();

	CompareTarget[] targets = { new CompareTarget(ScreenArea.of(SelectorType.TAG_NAME, "body")) };
	assertionView.assertView("topPage", targets);
}