Как открыть браузер с открытой консолью [дубликат]

Это можно сделать двумя способами. Пусть человек будет классом, который мы собираемся использовать для его демонстрации.

public class Person {

    private String name;
    private int age;

    public String getAge() {
        return age;
    }
}

Пусть люди являются списком лиц, которые будут преобразованы в карту

1.Использование Простой foreach и лямбда-выражение в списке

Map<Integer,List<Person>> mapPersons = new HashMap<>();
persons.forEach(p->mapPersons.put(p.getAge(),p));

2. Использование коллекторов в потоке, определенных в данном списке.

 Map<Integer,List<Person>> mapPersons = 
           persons.stream().collect(Collectors.groupingBy(Person::getAge));
10
задан Uziii 30 March 2016 в 14:03
поделиться

3 ответа

Использовать --auto-open-devtools-for-tabs:

Этот флаг открывает окно автоматического открытия Chrome DevTools для каждой вкладки. Он предназначен для использования разработчиками и автоматизации, чтобы не требовать взаимодействия с пользователем для открытия DevTools.

Источник

4
ответ дан Bugs 25 August 2018 в 03:09
поделиться

Вы пытались имитировать события нажатия клавиш для быстрого доступа к инструментам разработчика в Chrome?

String openDevTools = Keys.chord(Keys.ALT, Keys.CONTROL, "i");
driver.findElement(By.ByTagName("body")).sendKeys(openDevTools);

Это не идеально и в строгом режиме тестирования вам понадобится определение платформы, чтобы обеспечить покрытие как Mac, так и Windows. Я бы вообще рекомендовал избегать этого (даже если он работает), но это возможно, как работа, если вы действительно должны.

У меня такое чувство, что оно может также потерять фокус самого окна, если вы это сделаете это. Если это так, вам нужно что-то вроде следующего: -

String parentHandle = driver.getWindowHandle(); // get the current window handle
// do your dev tool stuff here
driver.switchTo().window(parentHandle); // switch back to the original window

Надеюсь, что это поможет.

Полезная ссылка, если она вас доставит где угодно: How для обработки нового окна в Selenium WebDriver с использованием Java?

Изменить: просто перечитайте вопрос и не думайте, что это все равно сработает. В ваших модульных тестах должны записываться ошибки в логике вашего кода. Тестирование селена должно только проверять поездки пользователей и фиксировать ошибки, когда пользовательская поездка прерывается. Вы никогда не должны проверять логику кода / ошибку, возникающую при тестировании селена.

1
ответ дан Community 25 August 2018 в 03:09
поделиться

Вы не можете. Драйвер Chrome использует протокол удаленной отладки Chrome для связи с браузером. Это тот же протокол, который использует консоль разработчика. К сожалению, Chrome разработан таким образом, что только один клиент может быть подключен с использованием протокола за раз, поэтому это означает либо инструменты разработчика, либо драйвер, но не оба одновременно.

12
ответ дан JimEvans 25 August 2018 в 03:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: