0
votes

Comment vérifier que l'ordre des éléments n'est pas changé dans JSON

Donc, j'essaie de faire un test de backend dans Postman qui testera les éléments affichés sur une page et l'ordre des éléments, par exemple:

permet de dire que j'ai une page Web qui a les "pages de navigation "Fonctionnalité mise en œuvre et vous pouvez basculer entre 5 éléments à afficher ou 10 éléments à afficher sur la page (ceci en frontend). p>

Dans le test de fin de bord, je fais d'abord une demande d'obtenir le premier 5 éléments: 1,2,3,4,5 Ensuite, je fais la demande d'obtenir les 10 éléments: 1,2,3,4,5,6,7,8,9,10 P>

J'ai souvent constaté que certains des cinq premiers éléments étaient mélangés à Le 5 prochain élément lors de la deuxième demande et apparaît quelque chose comme ce 2,3,4,6,5,1,7,8,9,10 P>

Je veux faire un test qui vérifiera que Les 5 premiers éléments resteront comme les 5 premiers et ne seront pas mélangés une fois que le nombre d'éléments à afficher de 5 à 10 modifiera. Comment créer une telle fonction avec JavaScript? P>

EXEMPLE JSON avant avec 5 éléments P>

[ { "username": "4"  } 
, { "username": "2"  } 
, { "username": "3"  } 
, { "username": "6"  } 
, { "username": "5"  } 
, { "username": "1"  } 
, { "username": "7"  } 
, { "username": "9"  } 
, { "username": "8"  } 
, { "username": "10" } 
] 


6 commentaires

Pouvez-vous démontrer tout effort pour résoudre ce problème?


Essayez de partager avec les détails de vos efforts de votre facteur


On dirait que votre arrière-plan ne simule pas une clause de «commande par» que vous verriez dans une requête SQL. Ou que cela jette les demandes et ne les combine pas à nouveau dans l'ordre. Plus d'informations? Le pire des cas, vous pouvez utiliser .sort () du côté client pour réparer à nouveau la commande. Je préférerais donc résoudre le problème que les données ne sont pas triées telles qu'elles arrivent, au lieu d'écrire un vérificateur pour voir si vous devez .sort () ou non.


Utiliser .filter () Pour filtrer le tableau 10 éléments pour obtenir le reste 5. .concat Les 5 premiers avec les 5 autres pour obtenir le nouveau tableau de 10 éléments


@Scotthunter, eh bien, non, j'ai essayé de regarder sur certaines choses et j'ai essayé de le résoudre moi-même, mais depuis que j'ai fait un compte ici juste pour poser cette question signifie que j'ai fait des efforts, et je ne pouvais pas le résoudre moi-même.


Si vous montrez ce que vous avez essayé, quelqu'un pourrait peut-être vous aider à résoudre ce problème.


3 Réponses :


3
votes

Veuillez utiliser cette fonction qu'il retournera true si même xxx


0 commentaires

0
votes

D'après ce que j'ai bien compris, vous avez besoin d'une fonction qui teste votre scénario.

function testFirstFive(initial, second) {
  let result = true;

  initial.forEach((element, index) => {
    console.log('comparing', element.username, 'with',  second[index].username);
    if (element.username !== second[index].username) {
      result = false;
    }
  });

  return result;
}


0 commentaires

0
votes

à propos de: "Je veux faire un test qui vérifiera que les 5 premiers éléments resteront comme les 5 premiers et ne seront pas mélangés une fois que le nombre d'éléments à afficher de 5 à 10 change de 5 à 10 changera. Comment puis-je créer Une telle fonction avec JavaScript? "

p>

.as-console-wrapper { min-height: 100% !important; }


0 commentaires