Ocho consejos prácticos para el violinista

Todos deberían estar familiarizados con Fiddler, pero hay algunas habilidades que pueden no ser familiares. Aquí hay ocho habilidades prácticas. A través de la personalización de Fiddler, se puede mejorar la eficiencia de las pruebas de todos.

1. Al hacer doble clic en Sesión, la página de respuesta siempre se muestra en la página de la pestaña "json", la página de solicitud siempre se muestra en la página de la pestaña "formulario web".
En la ventana de ejecución del comando QUICK EXEC en la esquina inferior izquierda de Fiddler , ingresar

Si desea aprender la herramienta de captura de paquetes Fiddler, aquí le recomiendo una serie de videos. Se puede decir que este video es el tutorial de la herramienta de captura de paquetes Fiddler No. 1 en Internet en la estación B. Al mismo tiempo, el número de usuarios en línea llega a 1.000, y hay notas disponibles Recibo e intercambios técnicos con varios grandes dioses : haga clic en la tarjeta en la parte inferior del artículo '

¡Juegue a la captura de paquetes de Fiddler con base cero y aplíquela en el campo de las pruebas! _哔哩哔哩_bilibili [Notas de prueba de automatización de la interfaz de Python y código fuente de video + WeChat: mashang-nn Comentarios (555 en la estación b) se pueden recopilar de forma gratuita, ¡y tres me gusta consecutivos son el verdadero amor! 】, la cantidad de vistas de video es 1349, la cantidad de pantallas de viñetas es 2, la cantidad de me gusta es 4, la cantidad de monedas lanzadas es 2, la cantidad de marcadores es 20 y la cantidad de reenvíos es 0. Estación B 555, videos relacionados: el último tutorial práctico de prueba de interfaz de Jmeter en la estación B en 2023, solo se necesita este conjunto de videos para dominar las pruebas de automatización de interfaz, y puede reproducir las cuatro aplicaciones principales de captura de violín en el campo de prueba desde 0 ! , 15 días para aprender pruebas de rendimiento, enseñanza detallada fácil de entender, combate de pruebas de rendimiento de Jmeter (pruebas de estrés de clúster, pruebas de estrés de enlace completo, ajuste de rendimiento, análisis de cuello de botella) dominado muy rápidamente, ¡simplemente hágalo! ¡Beneficios de la estación B! Pruebas de automatización web de 0 a tutorial de combate real del proyecto, ¡gratis para aprender! ! ! , webdriver-helper prueba automatizada combate real, use Postman para reproducir fácilmente pruebas automatizadas de interfaz, ¡el marco de prueba automatizado RobotFramework más completo de la estación 2023B desde cero entrada básica hasta combate real! (Versión actualizada), herramienta de captura de paquetes Fiddler y herramienta de captura de paquetes charles enseñanza práctica, prueba de automatización de aplicaciones Habilidades Appium+UiAutomator2, prueba de automatización de interfaz JMeter + Ant y salida de informe HTML https://www.bilibili.com/video/BV14g4y1H7vv/ ? spm_id_from=333.999.0.0

PREFS SET fiddler.ui.inspectors.response.alwaysuse "json" 
PREFS SET fiddler.ui.inspectors.request.alwaysuse "WebForms"

2. Muestre la dirección IP de solicitud de cada sesión
Open Fiddlerscript   y escriba el siguiente código en main() :

FiddlerObject.UI.lvSessions.AddBoundColumn("ServerIP", 120, "X-HostIP");

3. Modifique el tipo de contenido en el encabezado de respuesta
para abrir Fiddlerscript   y agregarlo en  onBeforeResponse()

// 如果host中包含tugele,把响应Content-Type修改为 json类型
if (oSession.host.Contains("tugele")){
    oSession.oResponse["Content-Type"] = "application/json;charset=UTF-8";
}

4. Haga clic con el botón derecho en la sesión, use el navegador para abrir la URL directamente,
abra Fiddlerscript y  agréguelo al controlador de clase  ]

public static ContextAction("Open in Chrome")
function DoOpenInIE(oSessions: Fiddler.Session[]){
    if (null == oSessions){
       MessageBox.Show("Please choose at least 1 session."); return;
    }
    for (var x = 0; x < oSessions.Length; x++){
    //执行cmd 命令
    System.Diagnostics.Process.Start("chrome.exe", oSessions[x].url);
    }
}

 5. En la columna Sesión, se muestra el tiempo de respuesta de cada solicitud,
abra Fiddlerscript y   agréguelo a la clase Handler

public static BindUIColumn("TimeTaken/ms", 120)
function TimeTaken(oS: Session):String{
    var sResult = "0";
    var t1_ms = oS.Timers.ClientBeginResponse.ToUniversalTime().Millisecond;
    var t1_m = oS.Timers.ClientBeginResponse.ToUniversalTime().Minute;
    var t1_s = oS.Timers.ClientBeginResponse.ToUniversalTime().Second;
    var t1 = t1_m*60*1000 + t1_s*1000 + t1_ms;

    var t2_ms = oS.Timers.ClientDoneRequest.ToUniversalTime().Millisecond;
    var t2_m = oS.Timers.ClientDoneRequest.ToUniversalTime().Minute;
    var t2_s = oS.Timers.ClientDoneRequest.ToUniversalTime().Second;
    var t2 = t2_m*60*1000 + t2_s*1000 + t2_ms;

    if(t1 >= t2){
        var t3 =  t1 - t2;
        sResult = t3.toString();
        }
    return sResult;
}

 6. Al enviar una solicitud, intercepte y modifique la URL solicitada
para abrir Fiddlerscript y   agregarlo en onBeforeRequest()

// 指定包含 biaoqing 的url,替换url中的字符串
if (oSession.fullUrl.Contains('biaoqing')){
   if (oSession.fullUrl.Contains('abc')){
       oSession.fullUrl = oSession.fullUrl.Replace('abc','bcd');
   }
   // 在fiddler log中查看实际的请求
   FiddlerObject.log(oSession.fullUrl);
}

7. Simule un entorno de red débil
En la barra de menú, abra el interruptor de velocidad Reglas > Rendimiento > Simular módem,
abra Fiddlerscript, modifique el umbral en el siguiente código y ajuste el tiempo de retraso del tráfico de enlace ascendente y descendente, la unidad es ms

if (m_SimulateModem) {
    // Delay sends by 300ms per KB uploaded.
    oSession["request-trickle-delay"] = "300";
    // Delay receives by 150ms per KB downloaded.
    oSession["response-trickle-delay"] = "550";
}

 8. Obtenga el contenido de la respuesta de la solicitud anterior como el cuerpo de la siguiente solicitud y use Fiddler para construir la solicitud.
Abra Fiddlerscript y   agréguelo en onBeforeRequest()

//解密开关每次打开关闭都要去脚本中修改不太方便,因此把解密开关配置在Fiddler UI菜单栏中
public static RulesOption("Dectryt tugele")
    var tgl: boolean = true;

static function OnBeforeResponse(oSession: Session) {
    //tgl为解密开关,配置在UI RULES选项卡中
    if (oSession.host.Contains("tugele") && tgl){
        //获取请求的响应内容string
        var oBody: String = oSession.GetResponseBodyAsString();
        var eBody: String = "content=" + encodeURIComponent(oBody);
        //把String 转为 byte[]类型
        var Content: byte[] = System.Text.Encoding.UTF8.GetBytes(eBody);
        //构造一个header对象
        var oRQH: HTTPRequestHeaders = new HTTPRequestHeaders("/tools/decrypt", ['User-Agent: Fiddler','Host: test.example.com','Content-Length: '+Content.length.ToString(), 'Content-Type: application/x-www-form-urlencoded']);
        //定义请求方法为post
        oRQH.HTTPMethod = "POST";
        //定义oSD(参数需要,一般为空)
        var oSD = new System.Collections.Specialized.StringDictionary();
        //发送请求,生成一个新session
        FiddlerApplication.oProxy.SendRequestAndWait(oRQH, Content, oSD, null);
    }
}

Los anteriores son algunos de los métodos que he resumido. Espero que pueda ser útil para todos. Por supuesto, Fiddler tiene muchos otros usos avanzados que vale la pena explorar, y espero que los comparta. 

Supongo que te gusta

Origin blog.csdn.net/caixiangting/article/details/131272741
Recomendado
Clasificación