On l’a vu dans les articles précédents, si on ne fournit pas les bons « nonces » à WordPress on peut faire le scénario avec des erreurs mais aussi avec des réponses ayant un retour HTTP 200 OK, mais dont le contenu n’est pas celui qu’on attend. On reçoit par exemple la page de login au lieu de la page de backoffice WordPress. Si on n’y prête pas attention et qu’on supprime les requêtes de « heartbeat » pour simplifier, on pourrait lancer des tests de charge qui ne produirait que des erreurs invisibles si on ne regarde pas le contenu de la réponse.
Pour ce faire, on va utiliser les assertions. On va chercher une chaîne de caractères pour vérifier qu’on a bien créé un article.
On va simplement chercher le titre de l’article. Comme il y a une variable dans le titre : l’identifiant de l’article, on est certain que si on retrouve ce titre c’est bien l’article qu’on vient de créer !
On écrit le titre et le texte de l’article dans la requête /wp-json/wp/v2/posts/id_article?_locale=user
. Ici on a même mis l’id_article
dans le texte du titre.
On peut vérifier le titre de l’article sur la page qui affiche l’article : /permalien/titre-du-nouvel-article/
et rechercher la chaîne de caractères : <h1 class="entry-title">Titre du nouvel article ${id_article}</h1>
La mise en place d’assertions est une bonne pratique. Néanmoins, il ne faut pas en abuser, car l’évolutivité de notre scénario et sa résistance au changement de version du site va se réduire.
Voici un rapide aperçu de la création de scénario. C’est une des parties du test de charge, la suite consistant effectivement à lancer les scénarios pour étudier le comportement du site grace à la métrologie et à tous les indicateurs qui pourraient donner des indices.
Références :
Les assertions dans JMeter