का उपयोग करते समय मैं संदेश() से आउटपुट कैसे देख सकता हूं, मैं आर में उत्कृष्ट टेस्टथैट पैकेज का उपयोग कर रहा हूं। मेरा मुद्दा यह है कि मैं कोड में संदेश() फ़ंक्शन से कोई आउटपुट नहीं देख सकता test_file का उपयोग करते समय परीक्षण किया गया। उदाहरण के लिए, मैं test_message.Rआर testthat पैकेज: test_file()
नामक एक फ़ाइल में कोड निम्नलिखित है का कहना है कि इस प्रकार और नीचे> test_file("test_message.R")
Cat: Hello world
.
तो मैं संदेश से पाठ नहीं दिखाई दे रहा आउटपुट प्राप्त
f <- function() {
message ("Message: Hello world")
cat ("Cat: Hello world\n")
return (1)
}
test_that ("message shows up", {
expect_equal(f(), 1)
})
मैं test_file चलाने() ।
हालांकि, जब मैं अपने आप ही कोड को चलाने मैं इसे देख पा रहे हैं:
> f()
Message: Hello world
Cat: Hello world
[1] 1
मुझे पता है कि डिफ़ॉल्ट रूप से, संदेश() stderr करने के लिए लिखते हैं और बिल्ली stdout में लिखते हैं और मुझे लगता है कि test_file अनुमान लगा रहा हूँ चेतावनियों और त्रुटियों में पाठ के लिए परीक्षण करने के लिए "interceptpts" stderr। क्या कोई तरीका है कि मैं चीजों को कॉन्फ़िगर कर सकता हूं ताकि मुझे कंसोल पर संदेश() टेक्स्ट दिखाई दे?
क्या मैं पूछ सकता हूं कि आप परीक्षण चलाने के दौरान संदेश का आउटपुट क्यों देखना चाहते हैं? – Dason
मैंने कोड की प्रगति लॉग करने के लिए पहले स्थान पर संदेश() को कॉल किया है। परीक्षणों को चलाने के दौरान मैं उन संदेशों को देखना चाहता हूं, यह जानने के लिए कि कोड विफल होने तक हमें कितना दूर मिला, और यह देखने के लिए कि संदेश स्वयं ठीक से काम कर रहे हैं। ऐसा लगता है कि मुझे इस – user2793761