La breve domanda: come si segue lo sviluppo test-driven su un progetto che si estende su più lingue?
In particolare, sto scrivendo un'applicazione Web che utilizza JavaScript e PHP e voglio seguire i principi TDD, ma non sono sicuro di come integrarli. Eseguo suite di test separate per le sezioni JS e PHP e uso simulazioni nella suite JS per emulare le risposte del server? Esiste una tecnica per testare l'unità di entrambi i componenti in una volta sola?
Questa è la mia prima esperienza con Test-Driven Development, quindi qualsiasi consiglio che puoi condividere su come renderlo meno scoraggiante sarebbe fantastico. Il motivo per cui l'ho scelto è che non appena ho finito un prototipo, i requisiti sono cambiati, costringendomi a cambiare il mio design. Ho pensato che se dovessi ricominciare, mi piacerebbe scrivere codice più estensibile con test di regressione integrati dall'inizio.
Sto scrivendo i miei test PHP in SimpleTest e i miei test JavaScript in JsTestDriver. Sono abituato ai paradigmi orientati agli oggetti, quindi ho alcune classi in PHP e sto facendo qualcosa di simile in JavaScript usando l'eredità prototipale. Ho anche iniziato a leggere questo libro su TDD in Python e questo su TDD in JavaScript , ma da tutto ciò che ho visto, questi non descrivono il test completo di un'applicazione (al di fuori dell'uso di qualcosa come Selenium o un altro driver web per eseguire test di accettazione front-end. TDD non è semplicemente tagliato per gli sviluppatori full-stack?