Tutoriels de la série Nanny de "Blast Liver Tidying" - Jouer avec Charles Tutoriel d'artefact de saisie de paquets (9) - Comment Charles modifie les paramètres de requête et les données de réponse - Partie 1

1. Présentation    

Brother Hong a déjà utilisé Postman pour ajuster davantage l'interface (côté Web), et il est très facile de démarrer et de fonctionner. Mais parfois si vous voulez modifier l'affichage des pages de l'APP, il sera plus gênant de créer des données. Il vaut mieux les créer soi-même. Si vous laissez le développement le faire, il faut demander à quelqu'un avec un sourcil bas. Après l'étude d'aujourd'hui, je n'ai plus à m'inquiéter de ces choses ennuyeuses. Nous pouvons y parvenir grâce à l'outil Charles. Vous pouvez utiliser les trois méthodes suivantes pour modifier les paramètres de la requête ou modifier la réponse : map (map), Breakpoints (points d'arrêt), Rewrite (réécriture).

2. Modifier les paramètres de requête ou les données de réponse  

Les étapes de fonctionnement spécifiques à Charles pour définir des points d'arrêt sont les suivantes : selon des exigences spécifiques, Charles fournit la fonction Map, la fonction Rewrite et la fonction Breakpoints, qui peuvent toutes permettre de modifier le contenu renvoyé par le serveur. Les différences fonctionnelles entre les trois sont :

La fonction Map est adaptée à la redirection à long terme de certaines requêtes vers une autre adresse réseau ou un fichier local. Seules les données retournées peuvent être modifiées.

La fonction de réécriture convient à certains remplacements réguliers sur les requêtes réseau. Les données de requête et les données de réponse peuvent être modifiées.

La fonction Breakpoints permet d'apporter quelques modifications temporaires. Pendant le temps de réponse, les données de demande et les données de réponse peuvent être modifiées.

2.1 CARTE (cartographie)

La fonction map de Charles est de rediriger une certaine requête, puis d'utiliser le contenu redirigé pour modifier le contenu de la requête ; la carte est divisée en Map Remote et Map Local, comme son nom l'indique : Map Remote consiste à rediriger la requête réseau spécifiée vers une autre URL, Map Local consiste à rediriger la requête réseau spécifiée vers un fichier local .

2.2 Réécrire (réécrire)

La fonction de réécriture convient à certains remplacements réguliers pour un certain type de requête réseau afin d'atteindre l'objectif de modifier le résultat.

2.3 Point d'arrêt (point d'arrêt)

La fonction de réécriture fournie ci-dessus est la plus appropriée pour le remplacement par lots et à long terme, mais souvent, nous souhaitons simplement modifier temporairement le résultat de la demande réseau. À l'heure actuelle, bien que la fonction de réécriture puisse également atteindre l'objectif, elle est trop gênante. Pour une modification temporaire, nous ferions mieux d'utiliser la fonction Breakpoints.

La fonction Breakpoints est similaire aux points d'arrêt que nous avons définis dans Xcode. Lorsqu'une requête réseau spécifiée se produit, Charles intercepte la requête. À ce stade, nous pouvons temporairement modifier le contenu renvoyé de la requête réseau dans Charles.

Si vous souhaitez apprendre les tests d'automatisation d'interface, je vous recommande ici une série de vidéos. Cette vidéo peut être considérée comme le didacticiel de test d'automatisation d'interface numéro un sur l'ensemble du réseau à la station B. Dans le même temps, le nombre de les utilisateurs ont atteint 1 000, et il y a des notes à collecter et à utiliser.Échanges techniques de divers maîtres : 798478386    

[Mise à jour] La collection la plus détaillée de tutoriels pratiques pour les tests automatisés des interfaces Python enseignés par la station B (la dernière version du combat réel)_哔哩哔哩_bilibili [Mise à jour] La collection la plus détaillée de tutoriels pratiques pour les tests automatisés de Python interfaces enseignées par la station B (combat réel) La dernière version) a un total de 200 vidéos, y compris : 1. [Interface Automation] La situation actuelle du marché des tests de logiciels et les normes de capacité des testeurs. , 2. [Interface Automation] Complètement compétent dans la bibliothèque Requests et la logique d'appel de méthode sous-jacente, 3. [Interface Automation] combat l'automatisation de l'interface et l'application d'expressions régulières et d'extracteurs JsonPath, etc. Pour des vidéos plus intéressantes, veuillez prêter attention à le compte UP. https://www.bilibili.com/video/BV17p4y1B77x/?spm_id_from=333.337&vd_source=488d25e59e6c5b111f7a1a1a16ecbe9a

3. Modifier les paramètres de la requête  

3.1 Sélectionner et modifier directement

Parfois, afin de déboguer la stabilité de l'interface et la tolérance aux pannes du serveur, nous devons essayer à plusieurs reprises des requêtes réseau avec des paramètres différents. Charles peut facilement fournir la modification et la retransmission des requêtes réseau. Les étapes de fonctionnement spécifiques sont les suivantes :

1. Cliquez simplement avec le bouton droit de la souris sur la demande de réseau précédente et sélectionnez "Composer" pour créer une demande de réseau modifiable. Ici, Hong Ge utilise toujours l'interface de l'article précédent pour démontrer. Comme indiqué ci-dessous:

2. Nous pouvons modifier toutes les informations de la demande, y compris l'adresse URL, le port, les paramètres, etc., puis cliquer sur "Exécuter" pour envoyer la demande de réseau modifiée (comme indiqué dans la figure ci-dessous). Charles nous aide à modifier et à envoyer la requête plusieurs fois, ce qui est très pratique pour nous et l'interface de débogage côté serveur, comme le montre la figure suivante :

 

3. Remplacez 1801 par 1802, envoyez le résultat attendu et renvoyez le même résultat que le résultat réel de Li Si, comme indiqué dans la figure ci-dessous :

 

3.2 Réécrire

La fonction de réécriture convient à certains remplacements réguliers pour un certain type de requête réseau afin d'atteindre l'objectif de modifier le résultat.

1. Par exemple, j'utilise toujours la requête API précédente pour obtenir des informations sur le compte utilisateur, et mon compte actuel est "Zhang San", comme illustré dans la figure suivante :

2. Nous voulons essayer de modifier directement les paramètres de la requête en remplaçant 1801 par 1802. Nous activons donc la fonction Réécrire, cliquez sur la barre de menu outils-->Réécrire, comme indiqué dans la figure suivante :

 

3. Cochez "Activer la réécriture", cliquez sur "Ajouter", puis définissez les règles suivantes, comme indiqué dans la figure ci-dessous :

 

4. L'accès au navigateur ou d'autres outils d'interface renvoient la demande et le résultat attendu renvoyé est le même que le résultat réel, comme illustré dans la figure suivante : 

 

3.3Point d'arrêt

La fonction de réécriture fournie ci-dessus est la plus appropriée pour le remplacement par lots et à long terme, mais souvent, nous souhaitons simplement modifier temporairement le résultat de la demande réseau. À l'heure actuelle, bien que la fonction de réécriture puisse également atteindre l'objectif, elle est trop gênante. Pour une modification temporaire, nous ferions mieux d'utiliser la fonction Breakpoints.

La fonction Breakpoints est similaire aux points d'arrêt que nous définissons dans Xcode. Lorsqu'une requête réseau spécifiée se produit, Charles intercepte la requête. À ce stade, nous pouvons temporairement modifier le contenu de la requête réseau dans Charles.

La méthode de modification de la requête au point d'arrêt a été présentée en détail dans l'article précédent, donc Frère Hong ne la répétera pas ici.

Il convient de noter que pendant le processus d'interception et de modification des requêtes réseau à l'aide de la fonction Breakpoints, la synchronisation de l'ensemble de la requête réseau ne sera pas suspendue, donc une longue pause peut entraîner l'expiration de la requête du client. hé-hé ! Cela testera la vitesse de votre main.

4. Résumé    

Le frère Hong a présenté ici un total de trois façons de définir et de modifier les paramètres de la demande.En général, nous devons modifier la méthode de manière flexible en fonction des besoins, plutôt que statique. Eh bien, il se fait tard aujourd'hui, alors c'est tout pour l'explication et le partage ! Merci pour votre patience dans la lecture ~~

 

Je suppose que tu aimes

Origine blog.csdn.net/m0_73409141/article/details/131834643
conseillé
Classement