2009-09-16 13 views
5

माइक्रोसॉफ्ट टीम फाउंडेशन सर्वर के भीतर सीआई स्थापित करना, मेरे पास एक ऐसा निर्माण है जो समाधान का निर्माण करेगा और समाधान के भीतर सभी यूनिट परीक्षण निष्पादित करेगा।सिंगल यूनिट टेस्ट विफलता पर विफल टीएफएस बिल्ड

वर्तमान में बिल्ड सफल होने पर आंशिक रूप से सफल होगा और यूनिट परीक्षण विफल हो जाएगा। जब यूनिट परीक्षण विफल हो जाता है तो मैं बिल्ड को विफल होने के रूप में दिखाना चाहता हूं।

क्या कोई मुझे बता सकता है कि इस कार्यक्षमता को पूरा करने का कोई तरीका है या नहीं?

उत्तर

3

आप VS2008 SP1 अपने निर्माण मशीन पर स्थापित है, तो आप बस निम्नलिखित संपत्ति अपने TFSBuild.proj फाइल करने के लिए जोड़ सकते हैं:

<TreatTestFailureAsBuildFailure>true</TreatTestFailureAsBuildFailure> 

आप SP1 स्थापित नहीं है, तो कर दिया है और आप नहीं चाहते यह स्थापित करने के लिए है, तो आप यह विस्तृत here by the Dev Lead on the TFS Build team, Aaaron Hallberg के रूप में पुराने जमाने मार्ग कर सकते हैं:

<Target Name="AfterTest"> 

    <!-- Refresh the build properties. --> 
    <GetBuildProperties TeamFoundationServerUrl="$(TeamFoundationServerUrl)" 
         BuildUri="$(BuildUri)" 
         Condition=" '$(IsDesktopBuild)' != 'true' "> 
     <Output TaskParameter="TestSuccess" PropertyName="TestSuccess" /> 
    </GetBuildProperties> 

    <!-- Set CompilationStatus to Failed if TestSuccess is false. --> 
    <SetBuildProperties TeamFoundationServerUrl="$(TeamFoundationServerUrl)" 
         BuildUri="$(BuildUri)" 
         CompilationStatus="Failed" 
         Condition=" '$(IsDesktopBuild)' != 'true' and '$(TestSuccess)' != 'true' "> 

    </Target> 
+0

एक बार मैं टीम फाउंडेशन सर्वर स्थापित 2008 SP1 और TFSBuild.proj के "अतिरिक्त गुण" अनुभाग में प्रॉपर्टी आप ऊपर सूचीबद्ध जोड़ा यह पूरी तरह से काम किया। आपकी मदद के लिए धन्यवाद !!! – Sam

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