2017-05-12 4 views
10

से फ़ाइलों को आउटपुट करने के लिए सही फ़ोल्डर निर्देशिका बनाने के लिए कैसे मैं जानना चाहता हूं SOAPUI के भीतर एक फ़ोल्डर निर्देशिका स्थापित करने का सही तरीका क्या है। क्या मुझे प्रत्येक टेस्टकेस या टेस्ट्यूइट स्तर के भीतर सेटअप स्क्रिप्ट का उपयोग करना चाहिए या जब भी आवश्यक हो, तो उन्हें एक ग्रोवी स्क्रिप्ट चरण में सेट किया जाना चाहिए?स्क्रिप्ट assertion

वर्तमान में मैंने केवल groovy स्क्रिप्ट विधि का उपयोग करने का निर्णय लिया क्योंकि अगर मैं इसे सेटअप स्क्रिप्ट में उपयोग करता हूं, तो इसका मतलब है कि मुझे पहले से सेटअप स्क्रिप्ट चलाने के लिए फ़ोल्डर निर्देशिका प्राप्त करने के लिए पहले एक स्क्रिप्ट है जिसमें एक स्क्रिप्ट है अभिकथन।

नीचे एक ग्रूवी स्क्रिप्ट (बुलाया परीक्षण स्क्रिप्ट) में स्थापित मेरी फ़ोल्डर निर्देशिका का एक उदाहरण है:

def date = new Date() 
    def folderTime = date.format("yyyy-MM-dd HH-mm-ss") 

    //Create a folder directory for the responses 
    RootResultFolder = dataFolder + "\\Log Smoke Test Data" + "\\xxx" + "\\xxx - " + folderTime + "\\" 
    CreateResultFolder = new File(RootResultFolder) 
    CreateResultFolder.mkdir() 

... 

context.setProperty("RootResultFolder", RootResultFolder) 

नीचे है एक परीक्षण कदम ऊपर फ़ोल्डर निर्देशिका का उपयोग करता है के भीतर मेरी स्क्रिप्ट जोर:

def date = new Date().format("yyyy-MM-dd") 
def time = new Date().format("HH.mm.ss") 
def dataFolder = context.getProperty("RootResultFolder") 

def fileName = xxx+ ".txt" 
def rootFolder = dataFolder + fileName 
def logFile = new File(rootFolder) 

logFile.write "TEXT: " + xxx + "\n\n" + 
JsonOutput.prettyPrint 

धन्यवाद

+0

क्या आप प्रत्येक सूट के लिए अलग निर्देशिका चाहते हैं? केवल तभी परिवर्तन करना चाहिए जब कोई टेस्ट केस चलाया जाता है तो निर्देशिका बनाने में सक्षम होना चाहिए? क्या होगा यदि अलग-अलग परीक्षण मामले उसी दिन के अलग-अलग समय पर चलते हैं? – Rao

+0

हां मैं प्रत्येक टेस्ट सूट की निर्देशिका और परीक्षण मामलों के लिए निर्देशिका के भीतर पसंद करता हूं। मैं प्रत्येक बार एक अलग फ़ोल्डर चाहता था जब रन बटन को टेस्ट केस के लिए क्लिक किया जाता है, इसलिए कोई नई फ़ाइल पुरानी फ़ाइल को ओवरराइट नहीं करती है। लेकिन ईमानदार होने के लिए मैं सबसे अच्छे विकल्प के लिए जाऊंगा, इसलिए जो भी आपको लगता है वह सबसे अच्छा विकल्प है, मैं – BruceyBandit

+0

ठीक पर भरोसा करता हूं। लेकिन मैं 'टेस्ट रन xxxx' निर्देशिका के बारे में पूछ रहा हूं। उसी दिन भी कई बार बनाया जा सकता है? यदि हां, तो क्या आपने केस स्तर या स्क्रिप्ट सम्मिलन का परीक्षण करने के लिए अपने वर्तमान सूट स्तर 'सेटअप स्क्रिप्ट' को स्थानांतरित करने का प्रयास किया है? – Rao

उत्तर

3

मैं आप उन्हें निम्न कोड

+०१२३५१६४१०६१ साथ परियोजना के लिए रिश्तेदार जगह का सुझाव
def groovyUtils = new com.eviware.soapui.support.GroovyUtils(context) 

// define location relative to SOAPUI project. 
String projectPath = groovyUtils.projectPath + "/destination/" 

context.setProperty("RootResultFolder", projectPath) 
+0

तो मुझे बस इस कोड को प्रत्येक टेस्टकेस ग्रोवी स्क्रिप्ट में रखना चाहिए और यदि मैं चलाता हूं तो सभी फ़ोल्डर्स वहां जाएंगे? क्या मुझे अलग-अलग स्तरों पर कई बार भागने पर फ़ोल्डरों का अधिभार नहीं मिलेगा या इससे कोई फर्क नहीं पड़ता? जैसा कि मैंने कहा था कि टेस्ट रन फ़ोल्डर का कारण प्रति टेस्ट रन फ़ोल्डरों को अलग करना था, लेकिन यदि मैं टेस्ट रन फ़ोल्डर लेता हूं, तो मैं प्रोजेक्ट पथ फ़ोल्डर – BruceyBandit

+0

में फ़ोल्डर्स का अधिभार प्राप्त करें, आपको इसे एक बार करने में सक्षम होना चाहिए, फिर संदर्भ के लिए "रूट ResultFolder" प्रॉपर्टी का उपयोग करें ताकि आप प्रोजेक्ट रूट फ़ोल्डर दे सकें। –

संबंधित मुद्दे