प्रश्न: मैं ऐसे पैकेज में फ़ंक्शंस का परीक्षण कर रहा हूं जो मैं विकसित कर रहा हूं और जानना चाहूंगा कि आप यह कैसे करना है इसके लिए कुछ सामान्य दिशानिर्देश सुझा सकते हैं। कार्यों में सांख्यिकीय मॉडलिंग, परिवर्तन, सबसेटिंग और साजिश की एक बड़ी श्रृंखला शामिल है। क्या कोई 'मानक' या कुछ पर्याप्त परीक्षण है?आर में एक सांख्यिकीय समारोह का परीक्षण करने के लिए दिशानिर्देश?
एक उदाहरण: परीक्षण मुझे यह सवाल पूछते के लिए प्रेरित किया है कि,
समारोह dtheta:
dtheta <- function(x) {
## find the quantile of the mean
q.mean <- mean(mean(x) >= x)
## find the quantiles of ucl and lcl (q.mean +/- 0.15)
q.ucl <- q.mean + 0.15
q.lcl <- q.mean - 0.15
qs <- c(q.lcl, q.mean, q.ucl)
## find the lcl, mean, and ucl of the vector
c(quantile(x,qs), var(x), sqrt(var(x))/mean(x))
}
चरण 1:
set.seed(100) # per Dirk's recommendation
test <- rnorm(100000,10,1)
चरण 2: परीक्षण डाटा बनाने: फ़ंक्शन से वास्तविक आउटपुट के साथ फ़ंक्शन से अपेक्षित आउटपुट की तुलना करें:
expected <- quantile(test, c(0.35, 0.65, 0.5))
actual <- dtheta(test)[1:3]
signif(expected,2) %in% signif(actual,2)
चरण 3: हो सकता है एक और परीक्षण
test2 <- runif(100000, 0, 100)
expected <- c(35, 50, 65)
actual <- dtheta(test2)
expected %in% signif(actual,2)
चरण 4 कार्य करें: अगर सही है, समारोह 'कार्यात्मक'
+1 इनपुट परीक्षण के लिए जोरीस। मैं * आउटपुट * का परीक्षण करने के लिए भी जोड़ूंगा। आपके कार्यों का आउटपुट * अनुमानित * और * सटीक परिभाषित * होना चाहिए। दुर्भाग्यवश इस बिंदु पर, आर की बुनियादी कार्यक्षमता कभी-कभी बस बेकार होती है। जब तक आप दस्तावेज़ों पर दोबारा नहीं जाते, तब तक फ़ंक्शन वापस नहीं आते हैं, और फिर ... – VitoshKa