kot1401
kot1401
Czy metoda zawierająca taki wpis jest testowalana?

$financeOperationRepository = App::make('Game\Repositories\FinanceOperationRepositoryInterface');
Czy raczej muszę przenieść to do konstruktora?

#php #laravel #unittest #phpunit #programowanie
  • Najlepsze
  • Wszystkie komentarze
m.....t
m.....t
@kot1401: A jakbys najpierw napisal testy, to nie mialbys problemu z tym, czy jest testowalna :P
m.....t
m.....t
Jest testowalna, ale jak dla mnie za bardzo przywiazana do framework (wywolujesz App::make).

Testowac to mozesz dlatego, ze mozesz w testach podmienic implementacje FinanceOperationRepositoryInterface na co chcesz) (App::bind chociazby).
kot1401
kot1401
Taaadaam, oto mój pierwszy test jednostkowy w życiu:

class GreatCircleDistanceTest extends TestCase {

public function testDistance()

{
  • Najlepsze
  • Wszystkie komentarze
MacDada
@kot1401: Źle robisz, że chcesz do takich rzeczy wykorzystywać globalne funkcje. Dopisz więcej przypadków, żeby mieć pewność, że działa poprawnie i utwórz sobie klasę.
dzien_dobry
@kot1401: Wygląda nieżle, jeśli oczywiście do obliczeń statycznych wyników użyłeś zewnętrznego narzędzia, a nie swojego kodu. Przetestuj też warunki graniczne oraz warunki dla których kod powinien się wysypać. Oprócz tego istnieje konwencja assertEqual(given, expected), ponieważ sprawdzasz "czy wynik funkcji jest równy przewidywaniom", a nie czy "przewidywania są równe wynikowi funkcji". Poza tym długa ta linia, w php nie ma ograniczenia ilości znaków dla linii?

http://i.stack.imgur.com/xXkvA.jpg

przy pisaniu komentarzy pamiętaj o
Marmite
Dzisiaj widziałem chyba najmniej przydatny test jednostkowy ever. Oto on:

spyOn(foo, 'bar'); //zainstalowanie mocka na na metodzie "bar" obiektu foo - dop. mój

foo.bar();

expect(foo.bar).toHaveBeenCalled();
  • Najlepsze
  • Wszystkie komentarze
b0lec
@Marmite: nie bardzo się znam na unit testach, chodzi o to że expect(foo.bar).toHaveBeenCalled(); nigdy się nie wykona? i czego używacie do testów, jasmine?
Marmite
Marmite Autor
0
@b0lec: (#) Chodzi o to, że ten test nie ma sensu. Bo co on testuje? Co najwyżej czy silnik JavaScriptowy potrafi wywoływać funkcje :P

Zależy do jakich testów, w tym konkretnym przypadku (to było zadanie w ramach starania się o pracę) było to Jasmine. Ale generalnie do unit testów wykorzystuję Jasmine.
cochese
cochese
Ponieważ mam napisać coś od zera w Pythonie, postanowiłem zacząć od unit testów. A ponieważ nie znam się na testowaniu w Pythonie, czytam http://docs.python.org/2/library/unittest.html . Dobry wybór lektury? Polecicie coś uzupełniającego?

#programowanie #python #unittest
  • Najlepsze
  • Wszystkie komentarze
D.....k
Polecicie coś uzupełniającego?


@cochese: magnez ( ͡° ͜ʖ ͡°)
cochese
cochese
Czego używacie do testów jednostkowych w C? Na http://en.wikipedia.org/wiki/List_of_unit_testing_frameworks#C jest pińdzieści różnych, jak wybrać? #programowanie #jezykc #unittest
  • Najlepsze
  • Wszystkie komentarze
KrzaQ2
@cochese: Moƶe nie kompletnie na temat, ale ja bym uƶył czegoś dla C++, polecam unittesty od Google'a i od Boosta (ewentualnie Qt, ale to mniej);
noisy
#unittest.y są fajne, ale po 20 znajdowanie kolejnego corner case'a zaczyna być drażniące...

#programowanie #przemysleniaprogramisty
  • Najlepsze
  • Wszystkie komentarze
KrzaQ2
Przestaną być jak wykryją Ci za pół roku błąd w jednym commicie, gdy zupełnie o tej sprawie zapomnisz i uratują 3 dni szukania błędu za rok.
noisy
  • Najlepsze
  • Wszystkie komentarze