मैं यूनिट परीक्षण का उपयोग करना सीख रहा हूं, मैं एक प्रोजेक्ट बनाता हूं, xunit संदर्भ जोड़ें। और निम्नलिखित कोड:क्यों xunit पैरामीटर के साथ एक विधि परीक्षण की अनुमति नहीं है?
namespace UnitTestProject
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
[Fact]
private void test(int number1, string number2)
{
int result = number1 + Convert.ToInt32(number2);
Assert.IsType(Type.GetType("Int32"), result);
}
private void Form1_Load(object sender, EventArgs e)
{
}
}
}
जब मैं परीक्षण चलाने XUnit जीयूआई उपकरण का उपयोग कर, यह कहा:
UnitTestProject.Form1.test: System.InvalidOperationException: तथ्य विधि UnitTestProject.Form1.test नहीं कर सकते 於 Xunit.Sdk.FactCommand.Execute (testClass वस्तु)
Xunit.Sdk.FixtureCommand.Execute (वस्तु testClass)
Xunit.Sdk.BeforeAfterCommand.Execute (वस्तु testClass): मापदंडों स्टैक ट्रेस है Xunit.Sdk.LifetimeCommand.Execute (वस्तु testClass)
Xunit.Sdk.ExceptionAndOutputCaptureCommand.Execute (वस्तु testClass)
तो, मैं कैसे मानकों के साथ विधि/समारोह का परीक्षण कर सकते हैं?
धन्यवाद, लेकिन क्या मैं इनलाइन डेटा को यादृच्छिक मान में सेट कर सकता हूं? या बेहतर कहने के लिए, इनलाइनडाटा इनलाइन विधि/चर स्वीकार करता है? – Cheung
आप क्यों नहीं कर सकते हैं। नीचे एक गंदे उदाहरण देखें। – Alina
@ शिबा आम तौर पर आपको अपने परीक्षणों में यादृच्छिक मूल्यों का उपयोग नहीं करना चाहिए। आपकी उदाहरण विधि में यदि कोई यादृच्छिक संख्या विफल हो जाती है तो आपको पता नहीं चलेगा कि संख्याएं किस वजह से समस्या का कारण बनती हैं। अपने परीक्षण निर्धारित करने की कोशिश करें, और अपेक्षित, अप्रत्याशित और चरम इनपुट की एक श्रृंखला में फ़ीड करें। – DaveShaw