2014-04-29 2 views
5

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

मैं से here

जवाब का उपयोग करने की कोशिश की लेकिन सफलतापूर्वक बाहरी एनोटेशन सही ढंग से उठाया जा करने के लिए सक्षम नहीं था। यहाँ है कि मैं क्या बाहरी एनोटेशन फ़ाइल में करने की कोशिश की है: -

<assembly name="TechTalk.SpecFlow.dll"> 
    <member name="T:TechTalk.SpecFlow.BindingAttribute"> 
    <attribute ctor="M:JetBrains.Annotations.MeansImplicitUseAttribute.#ctor" /> 
    </member> 
    <member name="T:TechTalk.SpecFlow.GivenAttribute"> 
    <attribute ctor="M:JetBrains.Annotations.MeansImplicitUseAttribute.#ctor" /> 
    </member> 
    <member name="T:TechTalk.SpecFlow.WhenAttribute"> 
    <attribute ctor="M:JetBrains.Annotations.MeansImplicitUseAttribute.#ctor" /> 
    </member> 
    <member name="T:TechTalk.SpecFlow.ThenAttribute"> 
    <attribute ctor="M:JetBrains.Annotations.MeansImplicitUseAttribute.#ctor" /> 
    </member> 
</assembly> 

जो मैं सी में बचत की कोशिश की है: \ Program Files (x86) \ जेटब्रेन्स \ ReSharper \ V8.2 \ बिन और सी: \ Program Files (x86) \ JetBrains \ ReSharper \ v8.2 \ Bin \ ExternalAnototations (यह स्पष्ट नहीं था कि बाहरी एंटरपोटेशन फ़ोल्डर डिफ़ॉल्ट इंस्टॉल में मौजूद नहीं था)

लेकिन जब मैं वीएस को बंद और दोबारा खोलता हूं, निरीक्षण अभी भी बाइंडिंग्स और चरण डीफ़ को अप्रयुक्त के रूप में उठाता है: -

Solution qdf.AcceptanceTests.sln 
Project Alpari.QualityAssurance.SpecFlowExtensions 
    Alpari.QualityAssurance.SpecFlowExtensions\Steps\CrossStepDefinitionFileTwo.cs:7 Class 'CrossStepDefinitionFileTwo' is never used 
    Alpari.QualityAssurance.SpecFlowExtensions\Steps\CrossStepDefinitionFileTwo.cs:10 Method 'GivenICreateAnInstanceOfStepDefinitionOneFromStepDefinitionTwo' is never used 
    Alpari.QualityAssurance.SpecFlowExtensions\Steps\CrossStepDefinitionFileTwo.cs:42 Method 'GivenICallAMethodInStepDefinitionTwoThatCallsTheSameMethodInStepDefinitionFileOne' is never used 

क्या कोई मुझे बता सकता है कि मैं क्या कहता हूं ' कृपया इसे कॉन्फ़िगर करने में गलत किया है? ,

<!--Deploy to %ReSharperInstallDir%\Bin\ExternalAnnotations 
    to check the ExternalAnnotations have worked, highlight one and press Ctrl-Shift-F1 
    see https://stackoverflow.com/questions/23359738/how-can-i-get-resharper-to-treat-specflow-bindings-step-def-etc-annotations-as 
    for additional info 
--> 
<assembly name="TechTalk.SpecFlow"> 
    <member name="T:TechTalk.SpecFlow.BindingAttribute"> 
    <attribute ctor="M:JetBrains.Annotations.MeansImplicitUseAttribute.#ctor" /> 
    </member> 
    <member name="T:TechTalk.SpecFlow.GivenAttribute"> 
    <attribute ctor="M:JetBrains.Annotations.MeansImplicitUseAttribute.#ctor" /> 
    </member> 
    <member name="T:TechTalk.SpecFlow.WhenAttribute"> 
    <attribute ctor="M:JetBrains.Annotations.MeansImplicitUseAttribute.#ctor" /> 
    </member> 
    <member name="T:TechTalk.SpecFlow.ThenAttribute"> 
    <attribute ctor="M:JetBrains.Annotations.MeansImplicitUseAttribute.#ctor" /> 
    </member> 
    <member name="T:TechTalk.SpecFlow.BeforeTestRunAttribute"> 
    <attribute ctor="M:JetBrains.Annotations.MeansImplicitUseAttribute.#ctor" /> 
    </member> 
    <member name="T:TechTalk.SpecFlow.AfterTestRunAttribute"> 
    <attribute ctor="M:JetBrains.Annotations.MeansImplicitUseAttribute.#ctor" /> 
    </member> 
    <member name="T:TechTalk.SpecFlow.BeforeFeatureAttribute"> 
    <attribute ctor="M:JetBrains.Annotations.MeansImplicitUseAttribute.#ctor" /> 
    </member> 
    <member name="T:TechTalk.SpecFlow.AfterFeatureAttribute"> 
    <attribute ctor="M:JetBrains.Annotations.MeansImplicitUseAttribute.#ctor" /> 
    </member> 
    <member name="T:TechTalk.SpecFlow.BeforeScenarioAttribute"> 
    <attribute ctor="M:JetBrains.Annotations.MeansImplicitUseAttribute.#ctor" /> 
    </member> 
    <member name="T:TechTalk.SpecFlow.AfterScenarioAttribute"> 
    <attribute ctor="M:JetBrains.Annotations.MeansImplicitUseAttribute.#ctor" /> 
    </member> 
    <member name="T:TechTalk.SpecFlow.BeforeAttribute"> 
    <attribute ctor="M:JetBrains.Annotations.MeansImplicitUseAttribute.#ctor" /> 
    </member> 
    <member name="T:TechTalk.SpecFlow.AfterAttribute"> 
    <attribute ctor="M:JetBrains.Annotations.MeansImplicitUseAttribute.#ctor" /> 
    </member> 
    <member name="T:TechTalk.SpecFlow.BeforeScenarioBlockAttribute"> 
    <attribute ctor="M:JetBrains.Annotations.MeansImplicitUseAttribute.#ctor" /> 
    </member> 
    <member name="T:TechTalk.SpecFlow.AfterScenarioBlockAttribute"> 
    <attribute ctor="M:JetBrains.Annotations.MeansImplicitUseAttribute.#ctor" /> 
    </member> 
    <member name="T:TechTalk.SpecFlow.BeforeStepAttribute"> 
    <attribute ctor="M:JetBrains.Annotations.MeansImplicitUseAttribute.#ctor" /> 
    </member> 
    <member name="T:TechTalk.SpecFlow.AfterStepAttribute"> 
    <attribute ctor="M:JetBrains.Annotations.MeansImplicitUseAttribute.#ctor" /> 
    </member> 
    <member name="T:TechTalk.SpecFlow.StepArgumentTransformationAttribute"> 
    <attribute ctor="M:JetBrains.Annotations.MeansImplicitUseAttribute.#ctor" /> 
    </member> 
    <member name="T:TechTalk.SpecFlow.StepDefinitionAttribute"> 
    <attribute ctor="M:JetBrains.Annotations.MeansImplicitUseAttribute.#ctor" /> 
    </member> 
    <member name="T:TechTalk.SpecFlow.ScopeAttribute"> 
    <attribute ctor="M:JetBrains.Annotations.MeansImplicitUseAttribute.#ctor" /> 
    </member> 
</assembly> 

उत्तर

7
  1. सेल्सियस के लिए अपने TechTalk.SpecFlow.xml रखो: \ Program Files (x86) \ जेटब्रेन्स \ ReSharper \ V8.2 \ बिन \ ExternalAnnotations \;

  2. <assembly name="TechTalk.SpecFlow.dll"> से ".dll" एक्सटेंशन को हटाएं जिसे आपने <assembly name="TechTalk.SpecFlow"> प्राप्त करने के लिए उल्लिखित किया है;

  3. विजुअल स्टूडियो को फिर से खोलें;

  4. समाधान के लिए स्वच्छ रीशेर्पर कैश;

+0

सलाह अलेक्जेंडर के लिए धन्यवाद। मैंने उपरोक्त सभी को बिंदु 4 को छोड़कर कोशिश की है - मैं रिशेर्पर कैश को कैसे साफ़ करूं? – Dave00Galloway

+0

http://resharper-support.jetbrains.com/entries/23853492-ReSharper-stopped-working-for-a-single- विशिष्ट- वृद्धि –

+0

धन्यवाद मैं कोशिश करता हूं कि जब मैं अपनी मेज पर वापस आऊंगा – Dave00Galloway

2

, अधिकार के बारे में लग रहा है (एक्सटेंशन प्रबंधक में) लेकिन बाद ReSharper 8.2, बाहरी एनोटेशन ReSharper के लिए एक विस्तार के रूप में तैनात कर रहे हैं -:

संपादित एक्सएमएल जो सिकंदर के पद पालन करने के बाद ठीक काम पूरा इसलिए वे अब प्रोग्राम फाइलों के तहत नहीं हैं।

आप क्या कर सकते हैं, यह जांचने के लिए कि यह काम करने के लिए, TechTalk.SpecFlow.ExternalAnnotations.xml फ़ाइल का नाम है, और इसे अपने डीएलएल के आगे रखें (मुझे लगता है कि आप SpecFlow Nuget पैकेज का उपयोग कर रहे हैं, इसलिए अस्थायी इसे वहां डाल दें, lib में)। आपको अपना समाधान पुनः लोड करना होगा। फिर, आपको यह देखने में सक्षम होना चाहिए कि गुण लागू किए गए थे या नहीं। तुम भी QuickDoc सुविधा, (Ctrl-Q या विशेषता पर Ctrl-Shift-F1 दबाकर) निर्धारित करने के लिए करता है, तो विशेषता लागू किया जाता है का उपयोग कर सकते, जैसे:

काम करता है, तो आप तो वितरित कर सकते हैं ReSharper extension स्वयं के रूप में टिप्पणियां!

+0

वहां इगैल की सलाह के लिए धन्यवाद। तो मुझे nuget पैकेज के अंदर specflow dll के बगल में एक्सएमएल रखना चाहिए? क्या मुझे एक संदर्भ जोड़ने या स्पष्ट रूप से मेरी परियोजना या समाधान में फ़ाइल शामिल करने की आवश्यकता है? साथ ही, यदि यह एक एक्सएमएल फ़ाइल है, तो इसे .dll का नाम क्यों बदलें? – Dave00Galloway

+0

ओह, आप सही हैं, मेरा मतलब था '.xml'! मैंने जवाब संपादित किया, धन्यवाद! मैं चाहता था कि आप इसे डीएलएल के पास नूजेट में रखें ताकि यह देखने के लिए कि यह काम करता है या नहीं। ReSharper 'NllName.ExternalAnnotations का उपयोग करके बाहरी एनोटेशन (' Assembly नाम \ anything.xml' सम्मेलन का उपयोग करके) या वास्तविक डीएलएल के बगल में एनोटेशन की तलाश करता है।एक्सएमएल 'सम्मेलन। यदि यह काम करता है, यानी, रीशर्पर एनोटेशन लोड करता है, और यह आपके तरीके 'प्रयुक्त' दिखाई देता है, तो आप जानते हैं कि यह काम करता है, और एनोटेशन को पैकेज में स्वयं को वितरित करने के लिए डाल सकता है। –

+0

आर # एपीआई दस्तावेज़ों के पैकेजिंग अनुभाग पर नज़र डालें, यह बाहरी एनोटेशन के लिए नामकरण सम्मेलनों की सूची देता है: http://confluence.jetbrains.com/display/NETCOM/1.06+ पैकेजिंग +%28R8%29 –

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

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