Selenio che aggiunge strani caratteri alla fine di JavaScript in un campo modulo
-
03-07-2019 - |
Domanda
Sto cercando di impostare un campo per prepopolare con un set univoco di caratteri, in modo da poter generare automaticamente account di prova. A causa del modo in cui il sistema è impostato, il campo del nome deve essere univoco e non deve includere caratteri numerici.
Ho messo insieme questo codice di selenio, che funziona al 99%, ma lascia caratteri di immondizia extra alla fine del buon codice.
javascript{stringtime='';
nowtime=new Date().getTime().toString();
for ( var i in nowtime )
{ stringtime+=String.fromCharCode(parseInt(nowtime[i])+65 ); };
'test' + stringtime + '\0'}
Risultato: testBCEBBJCBFBBAI + un gruppo di personaggi che non verranno copiati qui. Sembrano 4 zeri in una scatola.
Grazie in anticipo per l'aiuto.
Soluzione
Escludendo il carattere '\ 0' alla fine, che compare in a?, e in Selenium, penso che il suo motore javascript abbia problemi a elaborare il for (var i in nowtime). Provalo in questo modo:
javascript{
stringtime= '';
nowtime=new Date().getTime().toString();
for(var i = 0; i < nowtime.length; i++){
stringtime += String.fromCharCode(parseInt(nowtime[i])+65);
}
stringtime;
}
Altri suggerimenti
Quei personaggi sono al di fuori dell'ASCII standard che il tuo font non può riprodurre. Quei numeri indicano che personaggio è. Se sono 4 zeri, è quel carattere \ 0
che stai mettendo alla fine. Non conosco la lingua, ma non sembra che tu ne abbia bisogno.
Anche il tuo generatore di numeri casuali è un po 'difettoso. Dai un'occhiata qui:
http://www.mediacollege.com/internet/javascript/number /random.html