Подскажите пожалуста как кликнуть по елементу которий находится в iframe. Знакомий подсказал что надо делать switch . Если кто сталкивался помогите.
  public static void switchFrame(){
    for (int i = 0 ; i < 50; i++)
        {
        wait(500);
        List<WebElement> frameset = DRIVER.findElements(By.tagName("iframe"));  
        
        try {
                DRIVER.switchTo().frame(frameset.get(frameset.size() - 1).getAttribute("name"));
                
                wait(1000);
                
                DRIVER.switchTo().activeElement();
                break;
            } catch (Throwable t)
            {
                System.out.println("new frame switch failed. retrying.");
            }
        }
    }
   
    public static void switchFrame(int index){
    for (int i = 0 ; i < 50; i++)
        {
        wait(500);
        List<WebElement> frameset = DRIVER.findElements(By.tagName("iframe"));  
        
        try {
            DRIVER.switchTo().frame(frameset.get(index).getAttribute("name"));
                Thread.sleep(500,0);
                DRIVER.switchTo().activeElement();
                break;
            } catch (Throwable t)
            {
                System.out.println("new frame switch failed. retrying." + t);
            }
        }
    }
    public static void switchFrame(String name){
        wait(500);
        List<WebElement> frameset = DRIVER.findElements(By.tagName("iframe"));  
        
        try {
            for(WebElement frame : frameset )
            {
                if(frame.getAttribute("id").indexOf(name) != -1)
                {
                    DRIVER.switchTo().frame(frame.getAttribute("name"));
                    Thread.sleep(500,0);
                    DRIVER.switchTo().activeElement();
                    break;
                }
            }
        } catch (Throwable t)
        {
            System.out.println("new frame switch failed. retrying." + t);
        }
    }
Знакомый всё верно подсказал. Для того, чтобы нажать элемент во фрейме, в него (фрейм) нужно сначала переключиться. Делается это командой driver.switchTo().frame("имя_фрейма"), ссылка на документацию - http://selenium2.ru/docs/webdriver.html#id11
P.S. почитайте официальные доки, там есть ответы на многие вопросы новичков ;)
И не стыдно такой код новичку советовать? :)
не забудьте только выходить relative UP-ом наверх
Для python webdriver помогло
да код нормальный, но новички после таких вставок кода пугаются и говорят, я не смогу этого сделать там надо программировать :)
не забывайте снова переключаться между фреймами, если вам надо снова выполнить действие в другом фрейме или в главном окне.