Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Boucle de test [ Algorithme / Compression & Cryptage ] (supergl)

lundi 21 mai 2007 à 15:01:04 | Boucle de test

supergl

Bonjour a tous,
j'ai réalisé un programme qui crypte ou décrypte une chaine de caractère avec un code alphanumérique.
Je voudrais avant cette mise en place du logiciel effectué une boucle de controle avec 100 000 itération en cryptage et décryptage.
mais je ne vois pas bien comment m'y prendre ?
créer une fonction de test supplémentaire dans le module?
Ou ???
Quen pensez vous

Merci
A bientot ++

lundi 21 mai 2007 à 16:00:15 | Re : Boucle de test

jmfmarques

Membre Club
Bonjour,

Ben... une boucle étant une boucle, je dirrais :

For i = 1 to 100000 (100000 ?... bon...)
  ---- fonction de cryptement (tes instructions pour crypter)
  doevents
  ----- fonction de décryptement (tes instructions pour décrypter)
  doevents
next

A moins que tu ne te sois mal exprimé quant à ce que tu cherches à faire !

lundi 21 mai 2007 à 16:02:00 | Re : Boucle de test

hvb

Membre Club
Réponse acceptée !
Une opération de test de ton systeme de cryptage? Enfin tu veux dire 100000 fois crypter et decrypter?
Je ne comprend pas ta question...
J'aurais fait ça pour ton test (en algo) :

procédure testcryptage
str, tmpstr,cle : chaine
test : booleen
test<-true
cle<-"tacle"
pour i allant de 1 à 100000
tmpstr<-str
str<-rypt(str,cle)
str<-decrypt(str,cle)
si tmpstr <> str alors
message erreur + " " + tmpstr
test<-false
fin si
fin boucle 
Si test=true alors
message "test ok"
sinon
message "test
fin si
fin procédure

Hvb a.k.a Batto
[ Lien ] ^^x
bato.ltd .at. gmail.com

lundi 21 mai 2007 à 17:12:06 | Re : Boucle de test

supergl

Re bonjour,
je me suis peut etre mal exprimé.
Je veux envoyer une chaine et un code.
la crypter et la décrypter. prende la chaine décrypter pour en faire une nouvelle chaine a crypter. la comparer a la chaine de base. Si RAS on continue la procédure.
si NON RAS on arrete et on imprime la chaine décrypter différente et son numéro d'itération

Mon formulaire :


Private Sub Command1_Click()
Text1 = crypter(Text1, Text2)
End Sub

Private Sub Command2_Click()
Text1 = decrypter(Text1, Text2)
End Sub



Mon module cryptage & decryptage

Function crypter(acrypt As String, code As String) As String
alpha = "azertyuiop^$qsdfghjklmùµwxcvbn,;:= -_AZERTYUIOP?*QSDFGHJKLM%£WXCVBN?./+[]?`~\<>²³&é'()§è!çà0123456789" & Chr(34)
crypt = acrypt
'boucle de controle
For Y = 1 To Len(code)
   v = Mid$(code, Y, 1)
   c = InStr(1, alpha, v)
   If c = 0 Then
       crypter = "erreur code sur caractère : " + v
       Exit Function
   End If
Next Y
For Y = 1 To Len(acrypt)
   v = Mid$(acrypt, Y, 1)
   c = InStr(1, alpha, v)
   If c = 0 Then
       crypter = "erreur chaine de cryptage sur caractère  : " + v
       Exit Function
   End If
Next Y
' fin de boucle de controle
   
   
For i = 1 To Len(acrypt)
    For a = 1 To Len(alpha)
        If Mid$(alpha, a, 1) = Mid$(acrypt, i, 1) Then lenbrt = a
        dfg = i - ((i \ Len(code)) * Len(code))
        If dfg = 0 Then dfg = Len(code)
        If Mid$(alpha, a, 1) = Mid$(code, dfg, 1) Then lenbrc = a
    Next a
    lenbr = (((lenbrt + lenbrc) - 1) - (((lenbrt + lenbrc) - 1) \ Len(alpha)) * Len(alpha))
    If lenbr = 0 Then lenbr = Len(alpha)
    Mid$(crypt, i, 1) = Mid$(alpha, lenbr, 1)
Next i
crypter = crypt
End Function


Function decrypter(adcrypt As String, code As String) As String
alpha = "azertyuiop^$qsdfghjklmùµwxcvbn,;:= -_AZERTYUIOP?*QSDFGHJKLM%£WXCVBN?./+[]?`~\<>²³&é'()§è!çà0123456789" & Chr(34)
crypt = adcrypt

'boucle de controle
For Y = 1 To Len(code)
   v = Mid$(code, Y, 1)
   c = InStr(1, alpha, v)
   If c = 0 Then
       decrypter = "erreur code sur caractère : " + v + " MERCI D'INFORMER LE POSTEUR DU TOPIC"
       Exit Function
   End If
Next Y
For Y = 1 To Len(adcrypt)
   v = Mid$(adcrypt, Y, 1)
   c = InStr(1, alpha, v)
   If c = 0 Then
       decrypter = "erreur chaine crypter sur caractère  : " + v + " MERCI D'INFORMER LE POSTEUR DU TOPIC"
       Exit Function
   End If
Next Y
' fin de boucle de controle
   
For i = 1 To Len(adcrypt)
    For a = 1 To Len(alpha)
        dfg = i - ((i \ Len(code)) * Len(code))
        If dfg = 0 Then dfg = Len(code)
        If Mid$(alpha, a, 1) = Mid$(code, dfg, 1) Then lenbrc = a
    Next a
    beta = Mid$(alpha, lenbrc, Len(alpha) - lenbrc + 1) & Mid$(alpha, 1, lenbrc - 1)
    For z = 1 To Len(beta)
        If Mid$(beta, z, 1) = Mid$(adcrypt, i, 1) Then lenbrt = z
    Next z
    Mid$(crypt, i, 1) = Mid$(alpha, lenbrt, 1)
Next i
decrypter = crypt
End Function





Faut il mettre une 3 eme fonction test ou une procédure a votre avis?
Comment introduire cette boucle ou procédure ??

Car en dehors du formulaire et de la fonction , je pédale

Merci avous

Gérard

lundi 21 mai 2007 à 17:56:58 | Re : Boucle de test

jmfmarques

Membre Club

Je crois que tu plaisantes un peu, là, non ?
Ton test se résume à la vérification de ce que la valeur retournée par ta fonction decrypter est égale au contenu de la textbox Text1... !

C'est tout et c'est vraiment peu !


lundi 21 mai 2007 à 18:07:41 | Re : Boucle de test

supergl

Je crois que tu plaisantes un peu, là, non ?
Ton test se résume à la vérification de ce que la valeur retournée par ta fonction decrypter est égale au contenu de la textbox Text1... !

C'est tout et c'est vraiment peu !

Hé bien non car , il arrive a bugger et je ne comprends pas pourquoi
Je voudrais récupérer la chaine bugger pour une analyse plus en détails.
Sur un beta test il y a déja eu 5 erreurs mais pas de données suffisante pour analyser ( je n'ai pas effcetuer les beta test personnellement)
je voudrais en profiter pour eneregistre la progression du cryptag et du décrytage a chaque itération.

Les béta testeur faisait un copier coller de la chaien a crypter a partir de documment RTF qui leur étaient remis.

Donc pas si peu que tu peux le penser jmfmarques, mais je comprends ton étonnement


A bientot 

lundi 21 mai 2007 à 18:17:07 | Re : Boucle de test

jmfmarques

Membre Club

Tu veux tester quoi ? que tes fonctions de cryptement et de décryptement fonctionnent bien ?

Si oui : je ne change pas un mot à ma réponse précédente : vérification de l'identité de la valeur retournée par ta fonction de décryptement et du contenu de ta textbox ...

Si ta méthode de cryptement ou celle de décryptement "boguent", c'est tout-à-fait autre chose et n'a plus rien à voir avec un test de fonctionnement


lundi 21 mai 2007 à 18:34:59 | Re : Boucle de test

supergl

Re
tout a fait vrai, je me suis mal exprimé je veux analyser dans quelles circonstances se produit un bug
et enregistrer tous les pas de l'algorithme au moment du bug.

dans ce but je veux lancer une itération qui me sollicite les fonctions crypter et decrypter et s'arrete quand une chaine est corrompu, en donnat les info du déroulement des derniers algo ritmes (CRypte & DECRYpte)



lundi 21 mai 2007 à 18:46:59 | Re : Boucle de test

jmfmarques

Membre Club
Réponse acceptée !

Hé bé ! Ce n'est plus la même chose du tout !

Et le conseil donné va dépendre de ta propre réponse ...

Comment se manifeste ton bug, exactement ?

1) il y a plantage ?

     et si oui : utilise le debugger !

2) il n'y a pas plantage, mais la fonction est abandonnée, avec affichage de mon message
   et là, il va falloir que tu nous guides avec détails

3) les fonctions vont jusqu'au bout mais ce qui est décrypté ne correspond pas ju tout au texte originel
  et là, c'est ton algo qu'il te faut reconsidérer !


lundi 21 mai 2007 à 20:15:27 | Re : Boucle de test

supergl

Bonsoir,

Il n'y a pas plantage mais la chaine crypter reviens erronné (défaut :1/500 a 1/1000)et comme elle sert de clef pour un autre applicatif, gros problème.
Le nombre de défauts est faible 1/500 ou 1/1000  environ.(Cela ne semble pas a proiori lié a l'algorithme : 499 réussites , 1 echec)
c'est pour cela que je voudrais lancer un test sur 100 000 itérations et aussi pour voir si la méthodolie d'erreur est toujours la meme
Avec 100  a 200 résultats une analyse plus pointue doit etre possible.

Problème difficile, peut etre pas lié au programme, peut etre au transmission d'info entre les différents element du programme

Merci a vous

Bonne soirée

PS : le procédure de hvb pourrait m'etre utile mais je ne vois pas bien comment la mettre en place dans un projet



1 2

Cette discussion est classé dans : boucle, test


Répondre à ce message

Sujets en rapport avec ce message

Problème de test-ping avec boucle infinie [ par mcleod06 ] Voila j'effectue des test ping avec l'API  "IcmpSendEcho" pour savoir si la connection est toujours maintenue, le probleme c'est que j'aimerais en fai boucle+test conditionel VBA [ par nicolasbentz ] bonjour,je veux faire une boucle+test qui permet de faire lire une colonne excel et incrementer un compteur tant que la ligne est different de nul.que test sous forme de boucle [ par kg_online ] Salut tout le monde j'ai réalisé avec les if....then un programme qui fait une centaine de test et ça marche très bien.En fait,à chaque il cherche un Test [ par neodante ] Re : test [ par jesusonline ] toujours à raler moi je dit vive Firefox : http://www.mozilla-europe.org/fr/products/firefox/start/central.html <img src=" Re : test [ par CanisLupus ] Par contre, j'ai eu des prob avec IE en cliquant sur les liens dans les e-mails d'outlook express : session fantomes d'ie en liste de taches et bloqua Prob Function boucle repertoire [ par spejosse ] Slt! Je debut en VBS et j'arrive pas à changer le 'Set fc = f.files'  pour voir le nom du rep et non pas le nom des fichiers qui se trouvent dans le r Exit all comment faire [ par cqui789 ] Bonjour, J'ai besoin de sortir de toutes les routines en cours mais pas fermer le projet. je precise: a un point de l'execution, dans une sub j'ai VBA test activation bibliotheque outlook MSOUTL9.OLB [ par JUJULILAS ] Je fournis des macros a des collègues.Comment test automatiquement que la ressource bilbiotheque outlook a ete activée.Je sais le faire manuellement : Comment attendre un resultat sans boucle do loop ? [ par alainnews ] salut,j'ai un probleme avec mon appli, je converse sans probleme avec un automate pour faire deplacer un axe.Jusqu'a present tout baigne mais j'attend


Nos sponsors

Sondage...

CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,172 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.