में मॉकिटो के साथ एक प्रॉपर्टी फ़ाइल मॉकिंग मैं अपने नियंत्रक में निम्न विधि के लिए यूनिट परीक्षण लिखने की कोशिश कर रहा हूं।स्प्रिंग
@Autowired
private ApplicationContext context;
private String getProperty() {
try {
Properties props = context.getBean("myProperties", Properties.class);
String val = props.getProperty("myProperty");
......
बीन मेरी applicationContext में इस तरह घोषित किया जाता है:
<util:properties id="myProperties" scope="prototype" location="file:${catalina.base}/webapps/myProperties.properties"/>
मैं यह कैसे नकली करूँ ताकि वैल चर के विभिन्न मानों परीक्षण कर सकते हैं?
context = Mockito.mock(ApplicationContext.class);
Mocikto.when(context.getBean("myProperties", Properties.class)).thenReturn(some test file)
लेकिन फिर मैं कहीं परीक्षण फ़ाइल एक सेम के रूप में घोषित करने के लिए होगा:
मैं एक परीक्षण गुण फ़ाइल बनाने और इस तरह यह मजाक के बारे में सोचा।
मैं सोच रहा था कि ऐसा करने का कोई आसान तरीका है या नहीं?
धन्यवाद
क्या आप स्प्रिंग एमवीसी का उपयोग कर रहे हैं? अपने नियंत्रक को एप्लिकेशन कॉन्टेक्स्ट का संदर्भ देने और इसके मूल्यों को खींचने के बजाय, आप बस अपने कंट्रोलर पर एक फ़ील्ड परिभाषित कर सकते हैं और नियंत्रक की बीन परिभाषा में इसके लिए एक मान निर्धारित कर सकते हैं। फिर परीक्षण एक गैर-मुद्दा बन जाता है, क्योंकि आप अपने नियंत्रक को प्रारंभ कर सकते हैं, हालांकि आप अपने परीक्षणों में चाहते हैं - एप्लिकेशन संदर्भ को नकल करने की आवश्यकता नहीं है। –