Zajmuję się tworzeniem aplikacji, która polega w znacznym stopniu na Joda-Money, i mam szereg testów jednostkowych, które sprawdzają moją logikę biznesową. Jednym (co prawda nieistotnym) punktem styczności było dla mnie to, jakie obiekty testować; konkretnie, z czego korzystać.Jaką walutę użyć w testach jednostkowych?
Jak ja to widzę, mam kilka opcji:
Wystarczy użyć
USD
Jest to oczywiście najprostszym sposobem, aby przejść, a większość mojej aktualnej aplikacji będzie pracować z USA Dolary, więc ma to sens. Z drugiej strony wydaje mi się, że koncentruje się na Stanach Zjednoczonych, i obawiam się, że pozwoliłoby to na uniknięcie błędów specyficznych dla waluty.
pomocą drugiego prawdziwa waluta, jak
CAD
To złapać błędnych twardych codings od
USD
, ale poza tym nie jest dużo lepiej niż tylko za pomocąUSD
.użyć dedykowanego "fake" currency, tj
XTS
To wyraźnie ma sens, mimo wszystko,
XTS
jest „zarezerwowana do użycia w badaniach”. Ale Joda oznacza waluty pseudo-waluty jako waluty z miejscami dziesiętnymi-1
. W praktyce podstawową różnicą między walutami w Joda-Money jest liczba miejsc dziesiętnych, więc może to maskować wszelkie błędy z dokładnością do miejsca dziesiętnego, takie jak błędne zaokrąglenie do wartości całkowitej.zarejestrować własną niestandardową waluty z
CurrencyUnit.registerCurrency()
To oczywiście działa, ale wydaje się to trochę dziwne, skoro istnieją alternatywy.
Użyj
CurrencyUnit
instancji utworzonego przez drwiącym bibliotekiniemal tak samo jak rejestracji niestandardowego waluty.
Ponownie, jest to oczywiście niewielki problem, ale jestem ciekaw, czy jest to standardowa praktyka w takich przypadkach, lub jeśli istnieje wyraźny powód, aby preferować jeden z tych opcji w szczególności.
Nie wydaje mi się to mniej ważne. Zamierzasz rozłożyć tę decyzję na wszystkie swoje testy jednostkowe? Jeśli nie możesz podjąć tej decyzji w jednym miejscu, masz zamiar utknąć z nią na zawsze. – CandiedOrange
@CandiedOrange się zgodziło, ale otrzymałem inne pytania z pytaniem "dlaczego tracisz na to swój czas?!?!?!?!?!" odpowiedzi, więc wywoływanie wszystkich moich ciekawostek "drobnych" obaw to trochę mechanizmu obronnego. – dimo414
Kapłani nienawidzą. Ciągle pytaj, bądź optymistą, a miłość cię odnajdzie. Pokój. – CandiedOrange