TDD è l'acronimo di Test-Driven Development o Test-Driven Design. È pratica di scrivere un unit test prima di scrivere il codice per soddisfarlo, in quello che è noto come il ciclo Red-Green-Refactor.
Ho imparato a fare Test Driven Development (TDD), Dependency Injection (DI) e Inversion of Control (IoC) allo stesso tempo. Quando scrivo codice usando TDD finisco sempre con DI nei costruttori della mia classe. Mi chiedo se ciò sia dovuto a come ho imparato a fare il TDD, o se questo …
Sono un nuovo programmatore (sto imparando da circa un anno) e nel mio obiettivo di migliorarlo ho appreso di recente su TDD. Volevo prendere l'abitudine di usarlo poiché sembra molto utile. Volevo controllare e assicurarmi di usarlo correttamente. Cosa sto facendo: Pensa a un nuovo metodo di cui ho bisogno. …
Sto scrivendo unit test per un sistema di guida per un videogioco. Il sistema ha diversi comportamenti (evitare quest'area a causa del motivo A, evitare quest'area a causa del motivo B, ognuno aggiungendo un po 'di contesto a una mappa della regione. Una funzione separata quindi analizza la mappa e …
Chiuso. Questa domanda è fuori tema . Al momento non accetta risposte. Vuoi migliorare questa domanda? Aggiorna la domanda in modo che sia in argomento per Software Engineering Stack Exchange. Chiuso 6 anni fa . Nella mia azienda sto cercando di spiegare il motivo per cui dovremmo fare TDD. Attualmente …
Ho letto molte cose su TDD ma ho ancora dubbi. Ad esempio, ho questi diagrammi di classe: È un semplice esempio, solo per conoscere TDD e oggetti finti. Quale test dovrei scrivere per primo? Prodotto , quindi Linea e ultimo, Ordine ? Se lo faccio, dovrei usare Line e Product …
Mi piace "rosso / verde / refactor" per RoR, ecc. Il mio lavoro quotidiano prevede l'elaborazione batch di file di grandi dimensioni da terze parti in Python e altri strumenti personalizzati. L'abbandono degli attributi di questi file è elevato, quindi ci sono molte correzioni / miglioramenti applicati abbastanza frequentemente. Non …
Una base di codice ben collaudata offre numerosi vantaggi, ma la verifica di alcuni aspetti del sistema comporta una base di codice resistente ad alcuni tipi di modifica. Un esempio è la verifica di output specifici, ad esempio testo o HTML. I test vengono spesso scritti (ingenuamente?) In modo da …
Sto lavorando all'elaborazione delle immagini (principalmente OCR) e mi chiedo come dovrei integrare i test unitari nel mio sviluppo. Sto già utilizzando i test unitari per un tipo di codice più "comune", ma quando ho a che fare con il codice di elaborazione delle immagini non sono sicuro di come …
Ecco un esempio: la mia applicazione web contiene elementi trascinabili. Quando si trascina un elemento, il browser produce una "immagine fantasma". Voglio rimuovere "l'immagine fantasma" durante il trascinamento e scrivo un test per questo comportamento. Il mio problema è che inizialmente non ho idea di come risolvere questo bug e …
Non sono chiaro come TDD, la metodologia, gestisca il caso seguente. Supponiamo che io voglia implementare l'algoritmo di fusione, in Python. Comincio scrivendo assert mergesort([]) === [] e il test fallisce con NameError: il nome 'mergesort' non è definito Aggiungo quindi def mergesort(a): return [] e il mio test ha …
In TDD c'è la sintassi Arrange Act Assert (AAA): [Test] public void Test_ReturnItemForRefund_ReturnsStockOfBlackSweatersAsTwo_WhenOneInStockAndOneIsReturned() { //Arrange ShopStock shopStock = new ShopStock(); Item blackSweater = new Item("ID: 25"); shopStock.AddStock(blackSweater); int expectedResult = 2; Item blackSweaterToReturn = new Item("ID: 25"); //Act shopStock.ReturnItemForRefund(blackSweaterToReturn); int actualResult = shopStock.GetStock("ID: 25"); //Assert Assert.AreEqual(expectedResult, actualResult); } Nei test …
Ho ereditato un gioco educativo basato sul web. Nell'ultimo anno ho lavorato per stabilizzare il codice e aggiungere nuove funzionalità. La maggior parte della logica è nel front-end, quindi i test delle unità di back-end, sebbene utili, coprono una piccola percentuale del codice. Il gioco è arrivato al punto in …
Dal punto di vista del valore vedo due gruppi di unit test nella mia pratica: Test che testano una logica non banale. Scriverli (prima o dopo l'implementazione) rivela alcuni problemi / potenziali bug e aiuta ad essere sicuri nel caso in cui la logica venga modificata in futuro. Test che …
Ho scritto questa lezione che fa alcune cose (forse questa è una violazione del principio della responsabilità singola). Ora mi rendo conto che un'altra parte del progetto ha bisogno di un pezzo di quella logica e il modo in cui lo esporrò è quello di estrarre una classe dal mio …
Uso Visual Studio 2012 e ha casi in cui abbiamo aggiunto i parametri dei modelli a una classe "solo" per introdurre un "punto di giuntura" in modo che nel test unitario possiamo sostituire quelle parti con oggetti finti. Come si introducono solitamente i punti di cucitura in C ++: utilizzando …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.