2013-08-05 27 views
12

के साथ सिंगल एकीकरण परीक्षण चलाएं मैं ग्रेडल के -Dtest.single ध्वज का उपयोग करके एक एकल एकीकरण परीक्षण चलाने की कोशिश कर रहा हूं। मैंने एक और स्रोत सेट जोड़ा है, src/integrationTest और वहां परीक्षण करें। मैं एक एकीकरण परीक्षण कार्यग्रेडल

task integrationTests(type: Test) { 
    dependsOn 'assemble', 'integrationTestClasses'  
    testClassesDir = sourceSets.integrationTest.output.classesDir 
    classpath = sourceSets.integrationTest.runtimeClasspath 
} 

यह ठीक चलाता है, लेकिन यह एक मिलान परीक्षण नहीं मिल सकता है अगर मैं एक एकल परीक्षण यह मुझसे कहता है चलाने के लिए प्रयास करें। जब भी मैं एक नया लिख ​​रहा हूं, मैं हर एकीकरण परीक्षण नहीं करना चाहता हूं। क्या इसे करने का कोई तरीका है?

उत्तर

11

सही सिंटैक्स है:

gradle testTaskName -DtestTaskName.single=...

इस मामले में:

gradle integrationTest -DintegrationTest.single=...

+1

धन्यवाद, पीटर। पूरी तरह से काम किया। –

+0

जब मैं यह कोशिश, मैं की तरह कुछ मिलता है: '$ gradlew -Dtest.single = SingleTest: subproject: परीक्षण ... : buildSrc: परीक्षण विफलता विफल: निर्माण एक अपवाद के साथ विफल रहा है। क्या गलत हुआ: कार्य 'परीक्षण' के लिए निष्पादन विफल रहा। पैटर्न के लिए मिलान परीक्षण नहीं मिला: सिंगलटेस्ट ' –

+0

शायद आपके पास उस नाम के साथ टेस्ट क्लास नहीं है? –

28

Gradle 1.10 चूंकि आप लिख सकते हैं:

//select specific test method 
gradle test --tests org.gradle.SomeTest.someFeature 

//select specific test class 
gradle test --tests org.gradle.SomeTest 

//select all tests from package 
gradle test --tests org.gradle.internal* 

//select all ui test methods from integration tests by naming convention 
gradle test --tests *IntegTest*ui* 

//selecting tests from different test tasks 
gradle test --tests *UiTest integTest --tests *WebTest*ui 

यहां अधिक पढ़ें http://www.gradle.org/docs/1.10/release-notes#executing-specific-tests-from-the-command-line

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