2012-12-11 18 views
7

क्या किसी अन्य कार्यसूची को प्राप्त करना संभव है? मुझे क्या करना चाहते हैं कुछ परीक्षण प्रोफाइल बना है, इसलिए मैं डिफ़ॉल्ट परीक्षण होगा -ग्रैडल कार्य परिभाषा विरासत

test { 

    include 'com/something/something/**' 
    exclude 'com/something/else/**' 

    maxParallelForks 5 

    testLogging{ 
     exceptionFormat "full" 
     showStackTraces = false 
    } 

    jvmArgs '-Xms128m', '-Xmx512m', '-XX:MaxPermSize=128m' 
} 

और ओवरराइड "शामिल" या "maxParallelForks" भाग के साथ कुछ एक और परीक्षण आदि

इसके बिना संभव है नई कार्य वर्ग बनाना?

उत्तर

10

आप एक ही बार में उन सभी कार्यों को कॉन्फ़िगर कर सकता है, बशर्ते कि वे एक ही प्रकार के निम्नलिखित निर्माण का उपयोग करने का कर रहे हैं:

tasks.withType(Test) { 
    include 'com/something/something/** 
    ... 
} 

यह एक ही बार में प्रकार "टेस्ट" के सभी कार्यों को कॉन्फ़िगर करता है। उसके बाद आप कॉन्फ़िगरेशन ओवरराइड कर सकते हैं।

या यदि आप सभी कार्यों को सेट नहीं करना चाहते हैं, या उनमें से कुछ के पास एक अलग प्रकार है, तो आप उन्हें निम्न स्निपेट के रूप में समझा सकते हैं।

["test","anotherTestTask"].each { name -> 
    task "$name" { 
    include ... 
    } 
} 

याद रखें, आप ग्रूवी का पूरा पटकथा शक्ति है, इसलिए यहाँ विकल्पों में से एक बहुत कुछ कर रहे हैं ...

+1

धन्यवाद, मुझे लगता है कि मैं अपने पहले निर्माण "tasks.withType (टेस्ट के साथ जाना होगा) *। कॉन्फ़िगर करें ... "। मैं अभी भी उत्सुक हूं कि अगर कुछ विरासत वृक्ष बनाने का कोई तरीका है - कुछ वैश्विक परीक्षण परिभाषा के लिए, तो कुछ testSuite1 वैश्विक परीक्षण को विस्तारित करते हैं, फिर कुछ testSuite2 testSuite2 का विस्तार करते हैं, ... मुझे पता है कि कुछ "हैक्स" कैसे हैं I इसे प्राप्त कर सकते हैं, हालांकि मैं अभी भी इसके लिए कुछ अच्छा डीएसएल समर्थन देखना चाहता हूं। – mawek

+1

वाक्यविन्यास को 'tasks.with टाइप (टेस्ट) {...} 'और' कार्य "$ t" {...} 'के लिए सरलीकृत किया जा सकता है। हमारा मानना ​​है कि स्पष्ट * विन्यास नियम * अपने सभी छिपे हुए अर्थशास्त्र के साथ विरासत तंत्र की तुलना में बेहतर दृष्टिकोण हैं। इसलिए हमारे पास एक जोड़ने की योजना नहीं है। –

+0

सरलीकरण पीटर के लिए धन्यवाद :) –

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