Tôi đang viết một kịch bản mà cuối cùng trả về một khung dữ liệu. Câu hỏi của tôi là xung quanh nếu có bất kỳ thực hành tốt về cách sử dụng một gói thử nghiệm đơn vị để đảm bảo rằng khung dữ liệu được trả về là chính xác. (Tôi là một lập trình viên R bắt đầu, cộng thêm mới để các khái niệm về kiểm tra đơn vị)Làm thế nào để viết một bài kiểm tra đơn vị testthat cho một hàm trả về một khung dữ liệu
Kịch bản của tôi có hiệu quả trông giống như sau:
# 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 ....
... và tôi cuối cùng kết thúc với một khung dữ liệu với nhiều cột mới. Tuy nhiên, cách tiếp cận tốt nhất để kiểm tra xem khung dữ liệu được tạo ra là cái gì được dự đoán, sử dụng các xét nghiệm đơn vị?
Cho đến nay tôi đã tạo các kiểm tra đơn vị kiểm tra kết quả của từng chức năng, nhưng tôi muốn đảm bảo rằng tất cả các chức năng này cùng nhau tạo ra những gì được dự định. Tôi đã xem Hadley Wickham's page on testing nhưng không thể thấy bất kỳ điều gì rõ ràng về việc cần làm khi trả lại khung dữ liệu.
những suy nghĩ của tôi cho đến nay là:
- Tạo một khung dữ liệu dự kiến bằng tay
- Kiểm tra xem đầu ra bằng khung dữ liệu này, sử dụng
expect_that
hoặc tương tự
Bất kỳ suy nghĩ/gợi ý về nơi để tìm hướng dẫn? Google-fu của tôi đã cho phép tôi giảm đáng kể về điều này cho đến nay.
Giống như [này] (https://github.com/hadley/dplyr/blob/master/tests/testthat/test-colwise.R)? – Roland