Pruebas automatizadas de interfaz avanzada: autenticación/proxy/configuración de tiempo de espera/excepción de error (detallada)


prefacio

certificado

1. Autenticación básica:

# -*- coding:utf-8 -*-
import requests

url = "http://httpbin.org/basic-auth/user/passwd"

r1 = requests.get(url)
print "未提供用户名密码:" + str(r1.status_code)

#Basic Authentication
r2 = requests.get(url,auth=('user','passwd'))
print "已提供用户名密码:" + str(r2.status_code)

producción:

未提供用户名密码:401
已提供用户名密码:200

2. Certificación digital

from requests.auth import HTTPDigestAuth


url = 'http://httpbin.org/digest-auth/auth/user/pass'
equests.get(url, auth=HTTPDigestAuth('user', 'pass'))

interino

1. Método 1:
parámetro proxy:

import requests

proxies = {
    
    
  "https": "http://41.118.132.69:4433"
}
r = requests.post("http://httpbin.org/post", proxies=proxies)
print r.text

2. Método 2:
establecer variables de entorno:

$ export HTTP_PROXY="http://10.10.1.10:3128"
$ export HTTPS_PROXY="http://10.10.1.10:1080"
import requests
requests.get('http://example.org')

3. La autenticación básica HTTP utiliza el método proxy: http://usuario:contraseña@host/

proxies = {
    
    'http': 'http://user:[email protected]:3128/'}

verificación de certificado

1. Certificado SSL (HTTPS):

import requests

#跳过12306 的证书验证,把 verify 设置为 False: 
r = requests.get('https://kyfw.12306.cn/otn/', verify=False)
print r.text

2. Certificado de cliente:

requests.get('https://kennethreitz.org', cert=('/path/client.cert', '/path/client.key'))
s = requests.Session()
s.cert = '/path/client.cert'

configuración de tiempo de espera

1. Use el parámetro timeout para configurar el tiempo máximo de solicitud:

r = requests.get('https://github.com', timeout=5)

2. Establezca timeout=None para decirle a la solicitud que espere para siempre una respuesta sin pasar la solicitud como un valor de tiempo de espera.

r = solicitudes.get('https://github.com', tiempo de espera=Ninguno)

excepción de error

1. Todas las excepciones lanzadas explícitamente por las solicitudes se heredan de:

requests.exctptions.RequestException

2. Cuando encuentre problemas de red (como: falla de consulta de DNS, rechazo de conexión, etc.), las solicitudes arrojarán una excepción ConnectionError
3. Cuando encuentre una respuesta HTTP inválida rara, la solicitud arrojará una excepción HTTPError
4. Si la solicitud supera el tiempo de espera , se lanzará una excepción de tiempo de espera.
5. Si la solicitud supera los tiempos máximos de reescritura, se lanzará una excepción TooManyRedirects

El siguiente es el diagrama de sistema de arquitectura de conocimiento de aprendizaje de ingeniero de prueba de software más completo en 2023 que compilé

1. De la entrada al dominio de la programación en Python

Por favor agregue una descripción de la imagen

2. Proyecto de automatización de interfaz de combate real.

Por favor agregue una descripción de la imagen

3. Combate real del proyecto de automatización web

Por favor agregue una descripción de la imagen

4. Combate real del proyecto de automatización de aplicaciones

Por favor agregue una descripción de la imagen

5. Hoja de vida de los fabricantes de primer nivel

Por favor agregue una descripción de la imagen

6. Probar y desarrollar el sistema DevOps

Por favor agregue una descripción de la imagen

7. Herramientas de prueba automatizadas de uso común

Por favor agregue una descripción de la imagen

Ocho, prueba de rendimiento JMeter

Por favor agregue una descripción de la imagen

9. Resumen (pequeña sorpresa al final)

En el largo camino de la vida, está lleno de innumerables altibajos y desafíos. Pero mientras mantengamos una actitud positiva, avancemos con valentía y sigamos progresando, podremos superar las dificultades y realizar nuestros sueños. ¡Por lo tanto, crea en usted mismo y persiga sus ideales inquebrantablemente!

Todo fracaso es parte del éxito, no renuncies a tus sueños por contratiempos a corto plazo. Solo mediante una lucha incesante podemos marcar el comienzo de un mañana brillante. ¡Actúa y deja que tu esfuerzo logre el futuro que deseas!

Solo persiguiendo constantemente el progreso podemos lograr un mejor yo; solo trabajando duro constantemente podemos componer un maravilloso movimiento de vida. Cíñete a tus sueños y avanza con valentía, ¡definitivamente obtendrás las mejores recompensas!

Supongo que te gusta

Origin blog.csdn.net/m0_70102063/article/details/131418312
Recomendado
Clasificación