Please ignore secret bonuses. Secret tests do NOT award bonus. Max hw grade is 30+2 bonus efficiency

Do you need help?

Notice Board

Per partecipare al corso di Fondamenti di programmazione 2023-24 loggatevi e attivatelo nella vostra pagina dei corsi preferiti. A quel punto il corso appare nel menù personale cliccando sul proprio avatar. Per i materiali degli anni precedenti seguite lo stesso metodo.

To join the Programming/Lab 2023-24 course, log-on and select it on the my courses page. It will appear on the personal menu of your avatar. For earlier years use the same method.

[GUIDA] [HW8] Spyder non risponde con test_random_expo10

1
1937764 (3520 points)
7 14 42
in HW8 obbligatorio by (3.5k points)
edited by

Vorrei proporre una "soluzione" a un problema che sto riscontrando con i test dell'HW8.

In caso anche a voi, se fallisce il test test_random_expo10, Spyder smette di rispondere portando l'uso della CPU del PC al 100%, ciò è dovuto dal fatto che quando un test fallisce vengono stampati sia il risultato dato che il risultato atteso.

Avendo un PC abbastanza lento (ho scoperto dai tempi dei test essere più lento della VM lenta di Q2A), ed essendo il risultato di quel test molto grande, sul mio PC Spyder non risponde più per diverse decine di secondi. Risulta più veloce killarlo e riaprirlo da zero.

Stesso discorso eseguendo i test da Anaconda prompt.


Sperando che meno persone possibili siano nella mia stessa situazione, propongo una soluzione:

Sostituire (o commentare) nel file test_01.py il seguente blocco di codice:

self.assertEqual(result, expected,
                          "The returned result is incorrect / Il risultato non è corretto")

aggiungendo immediatamente prima o dopo:

if result != expected:
            raise AssertionError('Risultato errato!')

Fate attenzione ad aggiungere il secondo codice suggerito, altrimenti solo commentando o rimuovendo il primo non controllerà se il risultato è corretto!

In questo modo come contro c'è l'impossibilità di vedere l'output restituito e atteso, ma in caso fosse necessario è ovviamente possibile seguire questa guida al contrario.

Prima:

Dopo:


Se doveste avere soluzioni migliori, non esitate a lasciare una risposta qui sotto!

Ripercussioni sui timeout

Potrebbero esserci (è da verificare) ripercussioni sui timeout usando questa guida.

Quando è tutto corretto, rimettete tutto come era all'inizio così che non ci siano problemi, applicando questa soluzione solo se quel test fallisce e avete un PC poco potente.

Please log in or register to answer this question.