मैं वीएस -2010 का उपयोग कर रहा हूं, मेरे पास निम्न विधि कॉल है:एमएसटीएस्ट सम्मान [सशर्त()] विशेषता बनाएं?
[Conditional("DEBUG")]
public void VerboseLogging() { }
public void DoSomething() {
VerboseLogging();
Foo();
Bar();
}
फिर मेरे पास DoSomething
विधि के लिए एक यूनिट परीक्षण है जो जांचता है कि यह उचित लॉगिंग उत्सर्जित करता है।
[Conditional("DEBUG"), TestMethod()]
public void EnsureVerboseLog() {
DoSomething();
VerifyVerboseLoggingCalled(); // <-- fail in release builds since VerboseLogging() calls get eliminated.
}
ऐसा लगता है कि एमएसटीएक्स केवल TestMethod
देखता है और इसे निष्पादित करता है (असफल परीक्षण उत्पन्न करता है) भले ही मैंने इसे Conditional("DEBUG")
के साथ चिह्नित किया है और इसे रिलीज़ मोड में संकलित किया है।
तो, #if
के अलावा स्थिर संकलन के आधार पर कुछ परीक्षणों को बाहर करने का कोई तरीका है?
MSTest, MbUnit/काहिरा की तुलना में एक बड़ा एक बेकार हाँ? –