Red de conocimiento informático - Conocimientos de programación - Autoestudio para pruebas de software de programación

Autoestudio para pruebas de software de programación

No hace falta decir que el autoestudio si tiene una gran autodisciplina, capacidad de aprendizaje, curiosidad por investigar problemas y capacidad para resolver problemas, entonces las pruebas de software de autoestudio son completamente posibles. Aquí, también he compilado la ruta de aprendizaje de pruebas de software más reciente para aquellos que quieran aprender por su cuenta. Espero que sea útil para aquellos que quieran ingresar a esta industria.

Primera etapa: cursos básicos profesionales

Objetivos de la fase:

1. Familiarizarse con las tecnologías informáticas básicas: programación, bases de datos, sistemas operativos y control de versiones.

2. Ser capaz de utilizar hábilmente las tecnologías aprendidas para construir diversos entornos de servidores.

3. Tener un conocimiento profundo de varios problemas difíciles y métodos de tratamiento en el proceso de desarrollo de software.

4. Dominar la tecnología de programación Python y dominar el uso de Python para la programación.

Puntos de conocimiento:

1. Elementos de la página web, diseño, estilos CSS, modelo de caja, programación JavaScript, funciones, algoritmos básicos, expresiones regulares.

2. Conocimiento de bases de datos, paradigmas, configuración de MySQL, comandos, creación de bases de datos y creación de tablas, adición, eliminación y consulta de datos, restricciones, vistas, procedimientos almacenados, funciones, disparadores, transacciones, cursores, herramientas de construcción de modelos. proporciona un conocimiento profundo del conocimiento general de los sistemas de gestión de bases de datos y el uso y gestión de bases de datos MySQL. Sentar las bases para las pruebas de software y el desarrollo de pruebas.

3.Instalación y configuración de Linux, operaciones de directorio de archivos, comandos VI, administración, usuarios y permisos, implementación del entorno y programación Shell. Como sistema operativo de servidor convencional, Linux es una tecnología clave que todo ingeniero de pruebas y desarrollo debe dominar y utilizar de manera competente.

4. Conceptos básicos de programación de Python, reglas de sintaxis, funciones, tipos de datos, PDBC, cultivar sólidas habilidades básicas de programación de Python y dominar el uso de la programación de objetos centrales de Python.

5. Python orientado a objetos, manejo de excepciones, IO de archivos, subprocesos múltiples, programación de red, desarrollo de interfaz PyQT, comprensión profunda de la programación orientada a objetos, mecanismo de manejo de excepciones, principios de subprocesos múltiples. Conocimiento del protocolo de red y aplicación hábil al proyecto.

Segunda etapa: cursos básicos profesionales

Objetivos de la fase:

1. Aplicar de manera competente los conocimientos aprendidos para completar un proyecto de prueba de software estándar.

2. Competente en el uso de Python para completar pruebas de GUI, pruebas de interfaz y desarrollo de pruebas de rendimiento.

3. Tener un conocimiento profundo del sistema de tecnología de desarrollo de pruebas y los principios de implementación.

4. Utilice de manera flexible tecnología de prueba y desarrollo para resolver diversos problemas en el proyecto.

Puntos de conocimiento:

1. Ingeniería de software, calidad del software, proceso de prueba del sistema, métodos, términos técnicos, diseño de casos de prueba, herramientas de gestión Zen, informes de prueba, gestión de defectos. Comprender diversos problemas prácticos en ingeniería de software, comprender la teoría, los métodos y los procesos de prueba de sistemas, utilizar hábilmente métodos de diseño de casos de prueba y diseñar casos de prueba de manera eficiente.

2. Análisis de requisitos de prueba, diseño de planes de prueba, diseño de casos de prueba, implementación de proyectos de prueba, informes de defectos e informes de prueba, comprender en profundidad los diversos procesos y enlaces clave de las pruebas del sistema y completar hábilmente los proyectos de prueba del sistema.

3.Marco SikuliX, marco UIAutomation, marco Selenium WebDriver, marco básico, aplicación de Android, prueba Monkey, marco de prueba móvil Appium, marco de prueba móvil UIAutomator2 utilizan de manera integral varias plataformas operativas de aplicaciones para completar varias pruebas automatizadas Aprendizaje y aplicación de marcos, comprensión profunda de la tecnología de prueba automatizada de GUI y desarrollo de pruebas de los marcos correspondientes.

4. Marco de prueba unitaria de Python, protocolo de comunicación de red, protocolos HTTP y HTTPS, protocolos WebService y WebSocket, biblioteca de prueba de interfaz Python, herramientas de prueba de interfaz PostMan y SoapUI, a través de pruebas de interfaz a nivel de código y a nivel de protocolo. pruebas de interfaz Pruebas y desarrollo, uso flexible de Python para desarrollar scripts de prueba de interfaz, uso competente de varias herramientas de prueba de interfaz.

5. Principios de prueba de rendimiento, sistema de indicadores, diseño de escenarios, proceso de implementación, aplicación de herramienta JMeter, desarrollo de scripts BeanShell y marco de prueba de rendimiento Python Locust. Comprender profundamente el sistema técnico y la metodología de prueba de rendimiento. Competente en el uso de las pruebas de rendimiento de JMeter y el marco de pruebas de rendimiento de Locust permiten realizar pruebas de rendimiento de cualquier sistema.

Tercera fase: Proyecto práctico integral

Objetivos de la fase:

1. Aplicación flexible de pruebas de software y tecnología de desarrollo de pruebas en proyectos.

2. Tener sólidas capacidades de prueba y desarrollo y ser capaz de completar proyectos de prueba y desarrollo de forma independiente.

3. Uso integral de la tecnología de prueba de software para satisfacer las necesidades de talentos senior de las empresas.

4. Tener un profundo conocimiento de la tecnología aprendida y capacidad para resolver problemas de forma independiente.

Puntos de conocimiento:

1. Análisis de requisitos de prueba, revisión por pares, plan de prueba, plan de prueba, caso de prueba, gestión de configuración, integración continua. Fortalecer el proceso de implementación y los detalles técnicos de los proyectos de prueba de sistemas mediante el combate real de proyectos de prueba de sistemas de aplicaciones empresariales a gran escala.

2. Diseño e implementación de pruebas de interfaz, pruebas de regresión, pruebas de humo, pruebas de seguridad, aplicación RobotFramework, práctica de automatización de UI. Combine varias tecnologías de pruebas automatizadas con ejercicios prácticos, fortalezca la aplicación de tecnologías de pruebas automatizadas y domine más marcos de pruebas.

3. Combate real del proyecto de prueba de rendimiento, la herramienta de prueba de rendimiento LoadRunner, resume que a través del combate real del proyecto integral, todo el conjunto de tecnologías de prueba se puede integrar en el proyecto para mejorar el efecto de aprendizaje y la experiencia del proyecto.

4. Desarrollo del marco de prueba nativo de Python, que incluye Monkey, UI, reconocimiento de imágenes, plataforma de prueba en la nube, informe de prueba HTML, integración continua, desarrollo del marco basado en palabras clave KDT y otras tecnologías nativas. A través de una gran cantidad de desarrollo de código nativo de Python, tengo un conocimiento profundo de los principios de implementación subyacentes de la tecnología de desarrollo de pruebas automatizadas, abandono por completo la dependencia de las herramientas y realizo tecnologías de desarrollo de pruebas reales.

5. Según las ideas de diseño y los métodos de implementación de este marco de prueba, se puede implementar de forma independiente un conjunto de marcos de prueba para completar un marco de prueba automatizado, que se puede utilizar directamente en proyectos reales.

6. Integre continuamente con Jenkins, los principios y herramientas de pruebas de seguridad, el desarrollo del rastreador de Python y el marco Scrapy, actualice otras tecnologías de prueba de software, mejore el conocimiento, mejore la competitividad y ayude al desarrollo profesional.

Conocimientos complementarios

1. Algoritmos avanzados, procesamiento de imágenes, procesamiento de vídeo, cifrado y descifrado, algoritmos de compresión.

2. Lenguaje de modelado unificado UML, cinco tipos de diagramas, diagramas de clases, explicaciones detalladas de diagramas de clases, diagramas de casos de uso y diagramas de secuencia.

3.Marco de desarrollo distribuido Dubbo, sistema de gestión de bases de datos relacionales Oracle, sistema de gestión de bases de datos no relacionales MongoDB.

4. Marco de desarrollo de big data Hadoop/MapReduce/Spark.

5. Desarrollo de aplicaciones nativas y desarrollo WebApp para Android e iOS.

6.Marco de procesamiento de imágenes OpenCV, marco de aprendizaje profundo TensorFlow, motor de búsqueda de texto completo Lucene y marco de segmentación de palabras chinas Ik-Analyzer, algoritmos y marcos de procesamiento de video, etc.

Los cursos en vídeo relevantes se pueden iniciar directamente en Snail Academy para ver el enlace web.