¿Cómo realizar una prueba de humo web factible con Selenium WebDriver?
He estado investigando sobre una prueba de carga de páginas web factible y más rápida conSelenium
. Una idea general de las pruebas de humo es hacer clic y navegar por todo el sitio para asegurarse de que las páginas se carguen correctamente. Inicialmente estaba pensando en usar algún tipo de formas para capturar elhttp
código de estado a través de algún tipo dehttp
bibliotecas desdeSelenium
no tiene ningún soporte nativo para eso. Pero descubrí que no es lo que quiero, ya que simplemente devolverá Todos y cada uno de los enlaces del sitio y la mayoría de ellos serán los que no quiero. Entonces, la mejor manera será realizar un clic real y tomar páginas a cambio. El problema es el tiempo de ejecución que llevará. Sin embargo, eso es lo que estoy haciendo actualmente. Divida la aplicación completa en diferentes módulos y haga clic en todos los enlaces VISIBLES y tome los objetos de la página a cambio con el selector conocido. estoy usandoFindElements()
Método para tomar todos los enlaces de una página y hacer clic de un lado a otro para probar la carga de la página. Estoy haciendo algo como lo siguiente:
¿Hay una mejor manera de mejorar el rendimiento?
WebElement deliveredChartDailyFocus = driver.findElement(By.id("delivered-chart-daily"));
deliveredChartDailyFocus.click();
// Get a list of all the <rect> elements under the #delivered-chart-daily element
List<WebElement> children = deliveredChartDailyFocus.findElements(By.tagName("rect"));
WebElement elementToClick = null; // variable for the element we want to click on
for (WebElement we : children) // loop through all our <rect> elements
{
if (we.isDisplayed())
{
elementToClick = we; // save the <rect> element to our variable
break; // stop iterating
}
}
if (elementToClick != null) // check we have a visible <rect> element
{
elementToClick.click();
}
else
{
// Handle case if no displayed rect elements were found
}