Ciao, mi pare un po' strana la logica nel senso per cui JSON.parse lo si usa su di una stringa per trasformarla in objcet (chiave / valore) e JSON.stringify al contrario (da object a stringa).
Se devi ciclare l'oggetto e leggere chiave e valore tanto vale ciclare "test" e verificare qui la chiave e il valore.
Attualmente se fai un console log di key/value nel ciclo cosa vedi? Vedi esattamente chiavi e valori? Da questo dovresti capire perchè non riesce il controllo su key / value.