------+++ Tests del ModuloTre Ho cominciato a svolgere i primi test sui vostri programmi. [[%ATTACHURL%/modulo3][Eccoli]]. * [[%ATTACHURL%/modulo3.tar.bz2][modulo3.tar.bz2]]: Versione quasi decente dei tests (zippata) * Alcuni *vostri test* sul *mio codice* non passano perchè vogliono il *vostro* dizionario.h invece del *mio* * I test non dovevano usare nessuna caratteristica della vostra struttura dati, dato che dovevano essere usati sul codice mio o di altri -- Users.AndreaSterbini - 30 May 2005 ------+++ Commenti Aggiungete [[#LaForm][qua sotto]] commenti e domande: ---- ---+++ Alcune considerazioni sui risultati Nei test le mie funzioni tornano NOT_IMPLEMENTED ma io penso di aver penso di aver implementato quei codici di ritorno. Inoltre la combinazione miei.test / suoi.test non compila in quanto io faccio uso di una costante simbolica (MAX_BUFFER) definita nel mio dizionario.h -- Comment added by Users.MassimilianoNatale on 31 May 2005 ---- ---++++ Alcune considerazioni sui risultati Guarda che si tratta dei MIEI test sulle TUE funzioni. Sono io che non ho ancora implementato quei test. Passa alla colonna successiva. Per i tuoi tests sul mio codice vedi il commento all'inizio della pagina. -- Comment added by Users.AndreaSterbini on 31 May 2005 ---- ---+++ INVALID_PARAMETER ma il peso doveva essere compreso o compreso _strettamente_ tra 0 e 1? ps evviva scordarsi le typedef! pps evviva scordarsi di risettare una define dopo il debug! -- Comment added by Users.MarcelloLagana on 31 May 2005 ---- ---+++ DOUBLE_KEY_FOUND Ho notato una cosa che mi ha lasciato un po' perplesso. Quando si fa il test dell'errore sopracitato su inserisciValore e leggiToken i suoi tests mi dicono che il test è fallito (in entrambi i casi) poiché le mie funzioni tornano TABLE_FULL invece di DOUBLE_KEY_FOUND. Sono andato a controllare e l'unico modo in cui il mio programma da come errore TABLE_FULL è quando il numero di oggetti inseriti è superiore a quello di "dimensioni", ossia quando "dimensioni == 0". Dato che i vostri tests non sono visionabili (oppure oggi il sito sta facendo il timido) volevo chiederle se è sicuro di settare un valore delle dimensioni maggiore di 0 quando crea il dizionario nei due casi menzionati. -- Comment added by Users.EnricoMontesi on 31 May 2005 ---- ---+++ tests studenti fatti su programma professore Volevo chiedere due cose. Innanzitutto quando provo a scaricare i file del codice dei progetti del professore (ossia modulo1.c e modulo2.c) il link mi dice che scarico invece testModulo1.c e testModulo2.c ...c'è qualcosa che non quadra? A parte questo ho dato un'occhiata alle varie risposte che i programmi del professore hanno dato ai miei tests...tre fallimenti su 4 non mi convincono molto: 1) INVALID_PARAMETER sulla funzione "inserisciValore(porta, -1, diz)". E' palese che passando "-1" come valore dovrebbe dare l'errore sopra menzionato, eppure non lo fa e torna 0...professore, lei è sicuro che questo fallimento sia da attribuire ai miei tests? 2) FILE_EMPTY su leggiTokens('filevuoto', diz), in questo caso la sua funzione mi torna EMPTY_STRING. Io passo però un file vuoto, che è diverso dal passare una stringa vuota. Dato che "leggiTokens" prima legge il file e poi analizza la stringa non dovrebbe dare come errore FILE_EMPTY prima di EMPTY_STRING? 3) EMPTY_STRING su calcolaPeso(tokens[0].contesto[0] = '\0', 5, diz, double *). E' chiaro che questo mio test cerca un errore in maniera parecchio sporca...però in teoria come test è valido, non trova? Controllo se vengono fatti dei controlli sul contenuto dei tokens. Il fatto che il suo programma non superi il test implica un errore da parte mia o un punto in più, poiché il mio programma supera il test ed il suo no? -- Comment added by Users.EnricoMontesi on 31 May 2005 ---- ---++++ Re: peso tra 0 e 1 Effettivamente avete ragione, i pesi debbono essere TRA 0.0 ed 1.0, rifaccio i test -- Comment added by Users.AndreaSterbini on 01 Jun 2005 ---- ---++++ Codice del prof * Hai ragione, devo aggiustare il link. * FILE_EMPTY: controllo e rifaccio i test se necessario * EMPTY_STRING tra i tokens ... ci penso :-) -- Comment added by Users.AndreaSterbini on 01 Jun 2005 ---- ---++++ Codice del prof Comunque il codice c'è ... basta editare l'URL e cambiare testModuloN.c in moduloN.c -- Comment added by Users.AndreaSterbini on 01 Jun 2005 ---- ---+++ Ho rifatto i test Vedete se vi piacciono :-) -- Comment added by Users.AndreaSterbini on 03 Jun 2005 ---- ---++++ Senza titolo? quindi questi sono i risultati finali?? oppure deve fare ancora altri test? p.s. forse nn ho seguito molto ma cosa significa diff fra parentesi?? -- Comment added by Users.AntonioFelitti on 04 Jun 2005 ---- ---+++ incertezza in leggiTokens Ho un dubbio su una cosa. In leggiTokens i miei test passano un file vuoto per testare "FILE_EMPTY", però il suo programma come risposta da "EMPTY_STRING". Potrebbe controllare se l'errore è nei miei tests o nel suo programma? X Antonio: diff visualizza le correzioni che il professore ha dovuto fare per riuscire a far compilare i tuoi programmi. -- Comment added by Users.EnricoMontesi on 04 Jun 2005 ---- ---++++ diff.. e anche sono state fatte correzioni il programma è comunque valido a tutti gli effetti? tnx.. -- Comment added by Users.AntonioFelitti on 05 Jun 2005 ---- ---+++ X Antonio Si è valido, ma il fatto che siano state apportate correzioni fa scendere un po' il punteggio. Per il resto il numero di punti fatti lo vedi comunque -- Comment added by Users.EnricoMontesi on 05 Jun 2005 ---- ---++++ RE: memory leaks ... hmmmm .. l'analisi delle disallocazioni è vuota .... appena scopro perchè la rimetto online. -- Comment added by Users.AndreaSterbini on 05 Jun 2005 ---- ---+++ ... Memory leaks a posto Ho rimesso a posto i memory leaks ... -- Comment added by Users.AndreaSterbini on 05 Jun 2005 ---- ---+++ numero di test diverso? professore, ma non capisco come mai ad alcuni studenti ha fatto un certo numero di tests mentre ad altri ne ha fatti di meno; come mai e in quali casi il numero di test varia da uno studente all'altro? -- Comment added by Users.AlbertoLaRocca on 06 Jun 2005 ---- ---++++ RE: numero di tests diverso Alcuni test falliscono per un errore legato alla deallocazione (doppio free o free di un puntatore non allocato). In questi casi (non sono ancora riuscito a catturare l'errore) il test fallisce silenziosamente e non viene contato. -- Comment added by Users.AndreaSterbini on 07 Jun 2005 ---- ---+++ Problemi di comprensione A parte i problemi di comprensione che ho nei confronti del codice del professore (per quanto riguarda i tests, il codice di modulo3.c è facilmente comprensibile), non riesco a capire due errori che risultano nei confronti della mia funzione cercaValore. Non c'è la possibilità che ci siano errori di precisione, del tipo che mentre il programma del professore cerca il valore "0.1" associato a "from:*andrea" il valore che trova la funzione cercaValore sia il suo arrotondamento binario (ossia 0.10000001, per esempio...in pratica un numero leggermente superiore per colpa degli arrotondamenti che fa il calcolatore quando trasporta da binario a decimale)? Perché altrimenti non trovo proprio nessun motivo per cui mi dia errore. -- Comment added by Users.EnricoMontesi on 07 Jun 2005 ---- ---++++ RE: numero di tests diverso Ho disattivato alcuni check sulla memoria allocata ed ora il numero di tests è lo stesso. -- Comment added by Users.AndreaSterbini on 07 Jun 2005 ---- ---+++ leaks prof., sempre nei test, per alcuni memory leaks viene indicato il file che ha chiamato la malloc/realloc in questione (e che non ha chiamato free), per altri invece vedo solo un indirizzo esadecimale; suppongo che dove c'è l'indirizzo esadecimale a provocare il leak sia stata una libreria e non il nostro codice; ho intuito bene? se si allora quei leak non è detto che siano colpa nostra, giusto? -- Comment added by Users.AlbertoLaRocca on 07 Jun 2005 ---- ---+++ x Enrico, problemi di comprensione si Enrico, il motivo è quello: un numero che in base 10 rappresenti con un certo numero di cifre dopo la virgola, in binario si potrebbe dover rappresentare con un numero diverso (forse infinito) di cifre, quindi è impossibile rappresentarlo con precisione (mi pare di ricordare che un computer non è neanche in grado di memorizzare con esattezza un valore tipo 3.0 o 2.5, non ricordo bene).<br>questa cosa l'ho anche fatta presente nel forum delle domande del modulo3, (l'ultimo mio post mi sembra), quindi non penso che influisca sul punteggio.<br>inoltre considera anche un'altra cosa: sempre a cusa dell'imprecisione di calcolo, noi calcolando il peso di una email a mano o con la calcolatrice potremmo ottenere un certo valore (ad es. 0.5), ma in molti casi la calcolaPeso otterrà un valore che differisce magari di *un solo bit*, e quindi risulta essere qualcosa del tipo 0.4999... -- Comment added by Users.AlbertoLaRocca on 07 Jun 2005 ---- ---++++ x Enrico, problemi di comprensione Ed infatti nei miei tests faccio i confronti con un piccolo margine di errore, in modo che gli eventuali arrotondamenti rientrino comunque nella categoria dei TEST_PASSED. Volevo sapere se per caso il professore si fosse dimenticato di prendere in considerazione questi arrotondamenti (sai...mi hanno fatto perdere due punti sul totale...pesano un po' ^^) -- Comment added by Users.EnricoMontesi on 07 Jun 2005 ---- ---+++ RE: leaks Tranquilli, l'analisi dei leaks l'ho messa per darvi maggior diagnostica e non per penalizzarvi. -- Comment added by Users.AndreaSterbini on 07 Jun 2005 ---- ---++++ RE: due punti sul totale .... ... come a dire la differenza tra 30 e 29.99999999999999 ;-) -- Comment added by Users.AndreaSterbini on 07 Jun 2005 ---- ---+++ test fallito su calcolaPeso (RESULT_OK) professore, ho visto che il test su RESULT_OK sulla mia calcolaPeso del Modulo3 è fallito poiché a quanto pare ho resituito 0.7000... anziché 0.99qualcosa come ci si aspettava; eppure io facendo il debug a casa ho visto che con quei valori non viene assolutamente restituito 0.7, mi viene 0.99qualcosa! qualcosa non torna... anzi non torna nemmeno lo 0.99 prima del "qualcosa" :D (vabbè, battutaccia da omicidio... :D) -- Comment added by Users.AlbertoLaRocca on 08 Jun 2005 --- %COMMENT{type="thread"}% #LaForm
Attachments
Attachments
Topic attachments
I
Attachment
History
Action
Size
Date
Who
Comment
bz2
modulo3.tar.bz2
r5
r4
r3
r2
r1
manage
174.0 K
2005-06-07 - 15:19
AndreaSterbini
This topic: Labprog2eo
>
TestsModuloTre
Topic revision: r25 - 2005-08-21 - AndreaSterbini
Copyright © 2008-2025 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki?
Send feedback