Pruebas (5): ¿Qué son las pruebas automatizadas, la clasificación de pruebas automatizadas, las herramientas de selenio, el primer programa de pruebas automatizadas?

Tabla de contenido

1. ¿Qué son las pruebas automatizadas?

En nuestro día a día, veremos grifos automáticos, coches sin conductor, desinfectantes de manos automáticos, robots barredores automáticos, etc...

Las pruebas automatizadas se refieren a la automatización de las pruebas de software, la ejecución de aplicaciones o sistemas en un estado preestablecido, incluidas las condiciones normales y anormales, y finalmente la evaluación de los resultados de la ejecución. Transforme el comportamiento de las pruebas impulsadas por el pensamiento en un proceso de ejecución de la máquina; a través de las pruebas automatizadas, la entrada de mano de obra se reduce de manera efectiva al tiempo que mejora la calidad y la eficiencia de las pruebas.

2. Clasificación de las pruebas automatizadas

Las pruebas automatizadas incluyen la automatización de la interfaz de usuario (pruebas de interfaz), la automatización de la interfaz y la automatización de pruebas unitarias. De acuerdo con el siguiente modelo piramidal para la planificación de pruebas automatizadas, se puede generar la mejor relación de salida-entrada (ROI) de prueba de Zigong con menos inversión Obtenga buenos ingresos.

2.1 Pruebas unitarias

La mayor inversión debería ser en pruebas unitarias, y las pruebas unitarias se ejecutan con más frecuencia.
El marco de pruebas unitarias para Java es Junit

2.2 Pruebas automatizadas de IU

Las pruebas de automatización de la interfaz de usuario se dividen en pruebas de automatización móvil y pruebas de automatización web . Las herramientas de selenio que se presentan más adelante también se utilizan principalmente para las pruebas de automatización web.

 

En la pirámide de prueba, se nos dice que hagamos la mayor cantidad posible de pruebas automatizadas de la capa API, pero la prueba automatizada de la capa UI está más cerca de las necesidades de los usuarios y del negocio real del software;

[Características de la automatización de la interfaz de usuario]

  • Los casos de uso se mantienen en gran medida
  • Las páginas son muy relevantes y deben participar después de que se complete el desarrollo de la página del proyecto.
  • Las pruebas de interfaz de usuario son adecuadas para proyectos con pequeños cambios en la interfaz

[Beneficios de la automatización de la interfaz de usuario]

  • Se utiliza para pruebas de regresión para reducir la entrada de mano de obra
  • Reduzca el tiempo para volver a realizar la prueba y habilite pruebas de regresión rápidas
  • Cree un proceso de prueba bueno y confiable para reducir los errores falsos
  • Permite pruebas más tediosas.
  • mejor uso de los recursos
  • Importancia de los guiones de prueba

[Marco de prueba de automatización de la interfaz de usuario]

Hay muchos marcos de prueba para la capa de interfaz de usuario, como AutoIT para pruebas de clientes de Windows, Selenium para pruebas web y TestPlanteggPlant, Robot framework, QTP, etc.
A continuación, se toma principalmente el marco de prueba automatizado de la interfaz de usuario web Selenium como ejemplo para una introducción detallada. El selenio tiene las siguientes ventajas:

  • Gratis, no hay necesidad de preocuparse por descifrar el software
  • Pequeño y exquisito, es solo un paquete para diferentes idiomas, y QTP necesita descargar e instalar más de un programa G.
  • Admite múltiples idiomas, familiarizado con C, java, ruby, python o todo C #, puede completar pruebas automatizadas a través de selenium, mientras que QTP solo admite VBS
  • Admite múltiples plataformas: Windows, Linux, MAC,
  • Admite múltiples navegadores: es decir, ff, safari, opera, chrome
  • Proporciona muchas API para probar
  • Admite la ejecución de casos de prueba distribuidos, que pueden distribuir casos de prueba a diferentes máquinas de prueba para su ejecución, lo que equivale a la función de una máquina de distribución
     

[Objetos aplicables de las pruebas de automatización de la interfaz de usuario]

Requisitos previos para implementar pruebas automatizadas: cambios poco frecuentes en los requisitos, ciclos de proyecto lo suficientemente largos y scripts de prueba automatizados reutilizables.
Adecuado para proyectos de automatización:

  1. Proyecto tipo de producto. Para proyectos de tipo de producto, la nueva versión es una mejora sobre la base de la versión anterior, y las funciones del proyecto no han cambiado mucho, pero las funciones nuevas y antiguas del proyecto deben probarse repetidamente para la regresión. Las pruebas de regresión son el punto fuerte de las pruebas automatizadas, ya que pueden verificar si se han introducido nuevos defectos y si se han modificado los antiguos. Hasta cierto punto, las herramientas de prueba automatizadas pueden denominarse herramientas de prueba de regresión.
  2. Pruebas mecánicas y frecuentes. Cada vez que necesita ingresar lo mismo, una gran cantidad de algunos datos, y el ciclo de ejecución en un proyecto es relativamente largo. Como pruebas de compatibilidad.

Los proyectos en las siguientes situaciones no son adecuados para pruebas automatizadas:

1. Para proyectos con cambios frecuentes en los requisitos, los scripts de automatización no se pueden reutilizar, el costo de mantenimiento es demasiado alto y el rendimiento del costo es bajo. 2. El
ciclo del proyecto es corto. Después de compilar el script de automatización, el número de usos es no mucho, y el rendimiento de costos es bajo
Elementos intermedios que la automatización no puede implementar

[¿Qué habilidades necesita saber sobre las pruebas automatizadas?

Comprender el negocio básico del sistema bajo prueba, comprender el marco básico del negocio, comprender las pruebas funcionales, comprender un lenguaje de programación, comprender las bases de datos y los sistemas operativos, comprender los marcos de prueba comunes...

 3.
Introducción de la herramienta de selenio 3.1 selenio

Selenium es un marco de prueba automatizado basado en UI para aplicaciones web que admite múltiples plataformas, navegadores e idiomas.
El antiguo Selenium RC ha sido reemplazado por el actual webDriver, que puede entenderse simplemente como selenium1.0+webdriver constituye el actual Selenium2.0. Ahora, cuando hablamos de selenio, generalmente nos referimos a Selenio 2.0. Consiste en Selenium IDE, Webdriver, Selenium Grid.
 

3.2 Despliegue del entorno

¿Cuál es el entorno requerido para usar Selenium para implementar pruebas de automatización web?

  • En primer lugar, necesita un navegador, elijo el navegador Chrome aquí
  • ChromeDriver: Controlador para Google Chrome
  • kit de herramientas de selenio

【¿Qué es un controlador de navegador?

Para una computadora, puede hacer que la computadora y el equipo funcionen.Para
la automatización, el código de script escrito por Selenium no puede abrir directamente el navegador, lo que requiere que el controlador abra el navegador.

 

El controlador es equivalente a un servidor.

3.3 Métodos comunes de selenio

  • Buscar elementos de página findElement

 

 

  • Encuentre una lista de elementos con la misma etiqueta/atributo método findElements()

  •  El método de localización de elementos, a través de los métodos proporcionados en la clase Por

 

  • método xpath
  • gramática: 

Para el uso del método xpath, simplemente copie XPath en la página como parámetro del método 

4. El primer caso de prueba automatizado

Paso 1: cree un proyecto Maven e introduzca dependencias de selenio

 Paso 2: Cree paquetes y archivos java en el directorio de prueba

Paso 3: escriba código en Test1 para lograr el objetivo de "buscar a Di Lieba en el cuadro de búsqueda de Baidu" 

package com.autotest;

import org.openqa.selenium.By;
import org.openqa.selenium.chrome.ChromeDriver;

public class Test1 {
    //百度网址搜索关键词"迪丽热巴"
    public  void dilirebaTest() throws InterruptedException {
        ChromeDriver chromeDriver=new ChromeDriver(); //创建一个驱动实例
        Thread.sleep(3000);
        chromeDriver.get("https://www.baidu.com"); //输入百度网址,访问百度首页
        Thread.sleep(3000);
        //找到搜索输入框元素,并输入关键字"迪丽热巴"
        chromeDriver.findElement(By.cssSelector("#kw")).sendKeys("迪丽热巴");
        Thread.sleep(3000);
        //找到"百度一下"按钮并点击
        chromeDriver.findElement(By.cssSelector("#su")).click();
        Thread.sleep(3000);
        chromeDriver.quit(); //关闭浏览器
    }
}

Paso 4: Inicie el programa

package com.autotest;

public class RunAutoTest {

    public static void main(String[] args) throws InterruptedException {

        Test1 test1=new Test1();
        test1.dilirebaTest();
    }
}

[Un ejemplo de automatización simple consiste principalmente en los siguientes pasos]

  1. Crear una instancia de controlador, crear una sesión
  2. visita el sitio web
  3. encontrar elemento
  4. elementos operativos
  5. finalizar sesion

Supongo que te gusta

Origin blog.csdn.net/lzz718719/article/details/130683707
Recomendado
Clasificación