|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Sep 2004
Messaggi: 3967
|
[NUnit/C#]Effettuare test su CRUD
Ciao a tutti
Sempre per studio sto cercando di capirne un pò di più sul mondo dei test. Quello che vorrei capire è come effettuare dei test per esempio su una insert (ma qualsiasi altra operazione sul db mi piò andar bene). Grazie mille RaouL.
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
|
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
|
Quote:
Un metodo che fra le altre cose fa anche una "Insert" (o qualunque altra operazione su database), e il cui risultato dipende da questa, oppure il metodo che esegue la "Insert" stessa su Database?
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto. E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test. |
|
|
|
|
|
|
#3 | |
|
Senior Member
Iscritto dal: Sep 2004
Messaggi: 3967
|
Quote:
Inizialmente un metodo anche solo per una insert liscia e semplice; Io al momento ho fatto questo ma mi sembra una cosa priva di senso: Codice:
[TextFixture]
public class TestExperiment
{
[Test]
public void testInsert()
{
Prova p = new Prova();
p.Name = "prova";
p.Insert();
Assert.AreEqual("prova", p.getName());
}
}
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
|
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
|
Proverei a leggere il risultato da Database. Ovviamente testare una insert senza la possibilita' di leggere cosa c'e' sul database e' difficile.
Qualcosa tipo Codice:
[Test]
public void testInsert()
{
Prova p = new Prova();
p.Name = "prova";
p.Insert();
Prova q = Prova.SelectByName("prova");
Assert.AreEqual("prova", q.getName());
}
Qui ho supposto che ci fosse una static per restituire una nuova Prova leggendola da Database (Un po' come un costruttore, ma con un nome diverso)
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto. E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test. |
|
|
|
|
|
#5 | |
|
Senior Member
Iscritto dal: Sep 2004
Messaggi: 3967
|
Quote:
Ho aggiunto anche una "conta i records" in modo da essere certo che la lista abbia un elemento in più, oltre ad essere certo che sia quello che ho inserito: Codice:
Assert.Greater(prova.GetAll().Count, 6); Grazie RaouL.
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
|
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 06:49.




















