Estoy usando Selenium WebDriver Extensions en C# para seleccionar un valor de una lista de selección por un valor de texto parcial (el real tiene un espacio delante) . No puedo hacer que funcione usando una coincidencia de texto parcial. ¿Estoy haciendo algo mal o es esto un error?Usar SelectByText (parcial) con C# Selenium WebDriver no parece funcionar
ejemplo reproducible:
using Microsoft.VisualStudio.TestTools.UnitTesting;
using OpenQA.Selenium;
using OpenQA.Selenium.Firefox;
using OpenQA.Selenium.Support.UI;
namespace AutomatedTests
{
[TestClass]
public class UnitTest1
{
[TestMethod]
public void TestMethod1()
{
var driver = new FirefoxDriver();
driver.Navigate().GoToUrl("http://code.google.com/p/selenium/downloads/list");
var selectList = new SelectElement(driver.FindElement(By.Id("can")));
selectList.SelectByText("Featured downloads");
Assert.AreEqual(" Featured downloads", selectList.SelectedOption.Text);
selectList.SelectByValue("4");
Assert.AreEqual("Deprecated downloads", selectList.SelectedOption.Text);
driver.Quit();
}
}
}
Proporciona error: OpenQA.Selenium.NoSuchElementException: Cannot locate element with text: Featured downloads
¿Has probado SelectByText ("Descargas destacadas")? Estoy bastante seguro de que ninguna de las fijaciones elimina el espacio en blanco de la cuerda. – jarib
Sí, lo había intentado y funciona. –
Pero me gustaría seleccionar por subcadena, que aparentemente este método admite, según la documentación del método. –