Enregistrament amb el proxy Puffing Billy per a peticions AJAX del navegador
Feu passar el trànsit AJAX originat al navegador per un proxy d'enregistrament quan un enregistrador HTTP de Ruby no pot observar aquest camí de xarxa.
Una prova de Ruby pot engegar un navegador que fa les seves pròpies crides AJAX. Un enregistrador HTTP connectat a les biblioteques de client de Ruby no observa automàticament les connexions que obre aquest procés de navegador separat.
Un proxy d'enregistrament orientat al navegador se situa al camí que utilitzen aquestes peticions:
browser → recording forward proxy → external service
browser → recording forward proxy → recorded responsePuffing Billy proporciona aquesta disposició per a proves de navegador amb Ruby. Utilitzeu la seva integració per al controlador de navegador triat i, després, definiu les respostes o els enregistraments persistents que requereix l'escenari.
Feu coincidir la petició real, inclòs el mètode i la representació d'URL que espera el proxy. La forma documentada d'stub HTTPS inclou el port explícit, com ara https://api.example:443/status.
Trieu què passa amb una petició sense coincidència. Deixar-la arribar al servei en directe crea un tipus de prova; rebutjar-la quan no hi ha enregistrament dóna a un escenari fora de línia una frontera més clara. Manteniu els enregistraments prou específics perquè cossos enviats diferents no rebin per accident una mateixa resposta prefabricada.
Per a un navegador remot, l'oïdor del proxy ha de ser abastable des de la màquina o el contenidor d'aquest navegador. Localhost dins del procés de l'executor de proves no identifica el mateix oïdor des d'un altre amfitrió.