¿El selenio no facilita entender cómo es el QTP? Es una de las favoritas entre los programadores, pero supone una gran barrera para los recién llegados a la hora de hacer pruebas.
¿Qué es el selenio? ¿Qué es el Selenium RC? ¿Qué es Webdriver? ¿Cuál es la relación entre RC y Webdriver? ¿Cuál es la relación entre Webdriver y los lenguajes de programación? ¿Puede Selenium ejecutar scripts en paralelo?
Aquí el maestro de insectos te dice de forma sencilla que su relación intrincada es complicada. Endereza la relación entre ellos para poder aprovecharla de verdad.
¿Qué es el selenio?
Selenium es un conjunto de herramientas para pruebas de automatización web que incluye IDE, Grid, RC (selenium 1.0), WebDriver (selenium 2.0), etc. Selenium IDE es un plugin para el navegador Firefox. Proporciona funciones sencillas de grabación, edición y reproducción de guiones. Se utiliza la Rejilla de Selenio para distribuir los pasos de prueba. Ahora está integrado en Selenium Server. RC y WebDriver deberían considerarse más como un conjunto de especificaciones que definen los protocolos para que los pasos del cliente interactúen con el navegador. y la interfaz para la colocación y manipulación de elementos.
¿Qué es WebDriver? No es fácil para los estudiantes que son nuevos en las pruebas automatizadas de Selenium entender qué es una API y cómo se relaciona con los lenguajes de programación.
http://www.w3.org/TR/2013/WD-webdriver-20130117/
Cuando aprendí por primera vez Selenium (WebDriver), tardé una semana en traducir este documento, pero no entendía qué era. De hecho, es una especificación básica de protocolo. Por ejemplo, la API de Webdriver dice que necesitamos proporcionar un método para localizar los IDs de los elementos de página.
¿Cómo organiza y ejecuta Webdriver los casos de uso?
Lo siento, webdriver no lo hará.
La organización de los métodos (casos de uso) para manipular estos elementos de página e introducir los resultados de la prueba se realiza mediante el marco de pruebas unitarias del lenguaje de programación. Por ejemplo, los frameworks de pruebas unitarias Junit y TestNG de Java, el framework de pruebas unitarias UnitTest de Python, etc.
¿Cuál es la relación entre Selenium RC y WebDriver?
RC y WebDriver son similares en que pueden considerarse un conjunto de especificaciones para operar páginas web. Por supuesto, funcionan de forma diferente.
selenium RC ejecuta la aplicación Javascrip{filter}t en el navegador, usando el traductor Javascrip{filter}t incorporado del navegador para traducir y ejecutar comandos selenese (selenese es un conjunto de comandos selenium).
WebDriver controla el navegador directamente a través del soporte nativo o de las extensiones del navegador. WebDriver se desarrolla para navegadores individuales y reemplaza Javascrip{filtering}t incrustado en la aplicación web bajo prueba. La integración estrecha con los navegadores permite la creación de pruebas más avanzadas, evitando las limitaciones causadas por el modelo de seguridad Javascrip{filtering}t. Además del soporte de los proveedores de navegadores, WebDriver también utiliza llamadas a nivel de sistema operativo para simular la entrada del usuario.
Parece que Webdriver es un poco mejor. Para mantener la compatibilidad, RC y webdriver coexisten en selenium 2.0, pero selenium 2.0 generalmente se refiere a webdriver.
La diferencia entre paralelo y distribuido
Algunos estudiantes sienten curiosidad por cómo ejecutar casos de prueba en paralelo, y el paralelismo requiere que se ejecuten múltiples casos de uso "al mismo tiempo", lo cual también se logra gracias a la tecnología multihilo de los lenguajes de programación.
¿No es Selenium Grid capaz de ejecución distribuida, preguntas? El concepto de distribución es escribir un caso de uso que pueda ejecutarse en diferentes plataformas, como un caso de prueba en el ordenador A, puedes llamar al navegador Firefox del ordenador B (Linux) para ejecutar el caso de prueba en el ordenador A; También puedes llamar al navegador Chrome en el ordenador C (Windows) para ejecutar el caso de prueba en el ordenador A. Este es el concepto de distribución.
|