Selenium ajoutant des caractères étranges à la fin de javascript dans un champ de formulaire

StackOverflow https://stackoverflow.com/questions/811921

  •  03-07-2019
  •  | 
  •  

Question

J'essaie de configurer un champ à préremplir avec un jeu unique de caractères, afin de pouvoir générer automatiquement des comptes de test. En raison de la configuration du système, le champ du nom doit être unique et ne doit pas comporter de caractères numériques.

J'ai assemblé ce code sélénium, qui fonctionne à 99% du temps, mais laisse des caractères superflus à la fin du code correct.

javascript{stringtime=''; 
nowtime=new Date().getTime().toString(); 
for ( var i in nowtime ) 
  { stringtime+=String.fromCharCode(parseInt(nowtime[i])+65 ); }; 
'test' + stringtime + '\0'}

Résultat: testBCEBBJCBFBBAI + un groupe de caractères qui ne seront pas copiés ici. Ils ressemblent à 4 zéros dans une boîte.

Merci d'avance pour votre aide.

Était-ce utile?

La solution

En excluant le caractère "\ 0" à la fin, qui apparaît avec un?, et dans Selenium, je pense que son moteur javascript a des difficultés à traiter le for (var i in nowtime). Essayez comme ça:

javascript{
  stringtime= '';
  nowtime=new Date().getTime().toString();
  for(var i = 0; i < nowtime.length; i++){
    stringtime += String.fromCharCode(parseInt(nowtime[i])+65);
  }
  stringtime;
}

Autres conseils

Ces caractères ne font pas partie de la norme ASCII que votre police ne peut pas reproduire. Ces chiffres indiquent quel personnage il s'agit. Si ses 4 zéros, c'est ce caractère \ 0 que vous mettez à la fin. Je ne connais pas la langue, mais il ne semble pas que vous en ayez besoin.

Votre générateur de nombres aléatoires est également un peu imparfait. Regardez ici:

http://www.mediacollege.com/internet/javascript/number /random.html

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top