Intento escribir una prueba automática en Selenium con NodeJS y tengo un pequeño problema.
En primer lugar, mi código:
const {Builder, By, Key, until} = require("selenium-webdriver"); async function example() { let driver = await new Builder().forBrowser('chrome').build(); await driver.get('http://www.google.com'); await driver.findElement(By.name('q')).sendKeys('webdriver', Key.RETURN); await driver.wait(until.titleIs('webdriver - Google Search'), 1000); } example();Cada vez que inicio mi aplicación con "índice de nodo", se abre una nueva aplicación de Chrome/Firefox y me pregunta si estoy de acuerdo con las cookies. Intenté ir a la configuración o conectar mi cuenta y permitir las cookies en cualquier momento, pero si vuelvo a iniciar mi aplicación, mi configuración desaparece.
Creo que la solución es hacer clic manualmente en el botón "Estoy de acuerdo" con mi código, pero no sé cómo hacerlo. ¿Puede alguien ayudarme por favor?
¿Cómo debo escribir el código para poder hacer clic en el botón de acuerdo o qué más debo probar?
Para hacer clic en I agree utilice el siguiente xpath para identificar el elemento
await driver.findElement(By.xpth('//div[text()="I agree"]')).click()
Tu código será
const {Builder, By, Key, until} = require("selenium-webdriver"); async function example() { let driver = await new Builder().forBrowser('chrome').build(); await driver.get('http://www.google.com'); await driver.findElement(By.xpth('//div[text()="I agree"]')).click(); await driver.findElement(By.name('q')).sendKeys('webdriver', Key.RETURN); await driver.wait(until.titleIs('webdriver - Google Search'), 1000); } example();