Перейти к содержимому

Alexei_13

Регистрация: 29 ноя 2015
Offline Активность: 27 дек 2015 12:16
-----

#147082 Проблема выбора для условия if

Написано Alexei_13 14 декабря 2015 - 15:16

 

Я не могу понять, зачем для решения примитивной задачи использовать архисложные решения.

 

Должен где-то отдельно создан один(!!!) метод isElementPresent, который проверяет есть ли элемент на странице и потом писать простейший if.

 public boolean isElementPresent(By locator) {
            //ну или 0
            driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);
            List<WebElement> list = driver.findElements(locator);
            //ставим сколько было до этого - в данном случае 20, офк надо брать из проперти файла
            driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);
            //ничего не нашли вернули false
           if (list.size() == 0)    return false;
            //а так возвращаем у первого элемента
            return list.get(0).isDisplayed();
            
            

    }
да я и не спорю, просто говорю что и так, и так можно - кому что удобнее, просто бывают разные ситуации,и решение тоже разные !
главное что помогли человеку решить проблему а как делать тут уже его выбор!

  • 1


#147070 Проблема выбора для условия if

Написано Alexei_13 14 декабря 2015 - 11:18

лучше использовать  try catch тогда не надо будет добавлять sleep  это сэкономит время теста


  • 1


#146785 Selenium webdriver + Ant + Jenkins

Написано Alexei_13 03 декабря 2015 - 12:18

Здравствуйте. Недавно поставил Jenkins + Ant + Selenium webdriver на Ubuntu
Все настроил билд собирается без ошибок. В build.xml  проставил все зависимости , экспортировал build.xml  из  Eclipse  ( Export ant buildfiles).  Дополнил уже имеющийся Build.xml на виртуалке с Jenkins, перенес на виртуалку plugins, lib, сам проект с тестами и прописал в build.xml  новый путь ко всем папкам и файлам. Поставил Selenium Grid  и подключил к нему  Selenium node на другой виртуалке с  Windows 7. Запустил Selenium hub и Selenium node . В настройках selenium hub показывается нода которую я подключил.
Тест выглядет так:


package com.example.tests;

import java.util.regex.Pattern;
import java.util.concurrent.TimeUnit;

import org.junit.*;

import static org.junit.Assert.*;
import static org.hamcrest.CoreMatchers.*;

import org.openqa.selenium.*;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.support.ui.Select;
import org.openqa.selenium.remote.DesiredCapabilities;
import java.net.MalformedURLException;
import java.net.URL;
import org.openqa.selenium.remote.RemoteWebDriver;

public class Untitled4 {
  private WebDriver driver;
  private String baseUrl, nodeUrl;
  private boolean acceptNextAlert = true;
  private StringBuffer verificationErrors = new StringBuffer();

  @Before
  public void setUp() throws MalformedURLException {
    baseUrl = "google.com";
    nodeUrl = "http://192.168.128.115:5566/wd/hub";
    DesiredCapabilities capability = DesiredCapabilities.firefox();
    capability.setBrowserName("firefox");
    capability.setPlatform(Platform.VISTA);
    driver = new RemoteWebDriver(new URL(nodeUrl),capability);
    driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);

  }


  @Test
 
  
  
  public void testUntitled4() throws Exception {
    driver.get(baseUrl);
    
  }

 @After
  public void tearDown() throws Exception {
    driver.quit();
    String verificationErrorString = verificationErrors.toString();
    if (!"".equals(verificationErrorString)) {
      fail(verificationErrorString);
    }
  }

Не на jenkins  все работает. Тест выполняется на ноде.
Проблема заключается в следующем:  когда я запускаю билд в  jenkins  в консоле все проходит успешно , без единой ошибки и в конце выдает BUILD SUCCESSFUL. Однако сами тесты не запускаются.  Когда я делаю в самом коде теста ошибку и пытаюсь собрать билд в консоле пишет что в коде теста есть ошибка.
Заранее спасибо .

возмозжно вам это поможет :  http://www.ontestaut...kins-using-ant/


  • 1