Piszę skrypt, który ostatecznie zwraca ramkę danych. Moje pytanie dotyczy tego, czy istnieją dobre praktyki dotyczące korzystania z pakietu testów jednostkowych, aby upewnić się, że zwrócona ramka danych jest poprawna. (Jestem początkujący programista R, plus nowy do koncepcji testów jednostkowych)Jak napisać test tego testu jednostkowego dla funkcji zwracającej ramkę danych
Mój skrypt skutecznie wygląda następująco:
# initialize data frame
df.out <- data.frame(...)
# function set
function1 <- function(x) {...}
function2 <- function(x) {...}
# do something to this data frame
df.out$new.column <- function1(df.out)
# do something else
df.out$other.new.column <- function2(df.out)
# etc ....
... i ostatecznie skończyć z ramki danych z wiele nowych kolumn. Jednak jakie jest najlepsze podejście do testowania, że tworzona rama danych jest tym, co jest oczekiwane, przy użyciu testów jednostkowych?
Do tej pory stworzyłem testy jednostkowe, które sprawdzają wyniki każdej funkcji, ale chcę się upewnić, że uruchomienie wszystkich tych elementów razem daje to, co jest zamierzone. Przyjrzałem się Hadley Wickham's page on testing, ale nie widzę niczego oczywistego co zrobić po zwróceniu ramek danych.
Moje myśli do tej pory to:
- Załóż oczekiwaną ramkę danych ręcznie
- Sprawdź, czy wyjście równa tej ramki danych, używając
expect_that
lub podobnego
jakieś przemyślenia/wskaźniki na Gdzie szukać wskazówek? Moje Google-fu bardzo mnie zawiodło.
Like [to] (https://github.com/hadley/dplyr/blob/master/tests/testthat/test-colwise.R)? – Roland