अन्य उत्तरों बताते हैं कि लेकिन वास्तव में कैसे, तो मुझे एक उत्तर भी जोड़ने दें।
जब
किसी भी समय आप उत्पादन कोड है कि आप रखने के लिए जा रहे हैं लिख रहे हैं, तो आप यूनिट टेस्टिंग इसके लिए होना चाहिए।
पहले पाँच मिनट
या तो कर रहे हैं: सबसे उपयोगी प्रशिक्षण है कि मैं इस पर देखा निम्नलिखित 2-भाग वीडियो श्रृंखला थी सिर्फ परिचय ताकि आप इसके अंत तक जा सकें।
कैसे
मैं स्विफ्ट के साथ एक्सकोड 7 का उपयोग कर रहा हूं।
एक नई परियोजना शुरू करें और एक यूनिट टेस्ट जोड़ें।
मैं अपना MyProject
पर कॉल कर रहा हूं। यदि आप प्रोजेक्ट नेविगेटर में MyProjectTests समूह खोलते हैं, तो आप देखेंगे कि एक्सकोड ने आपके लिए पहले से ही एक यूनिट टेस्ट फ़ाइल बनाई है जिसे MyProjectTest.swift कहा जाता है।
अब आप बिल्कुल उदाहरण तरीकों हटा सकते हैं और अपने स्वयं के वर्ग विधि का परीक्षण करने के लिए एक नया func
जोड़ सकते हैं। शीर्ष पर लाइन @testable import MyProject
जोड़ने के लिए सुनिश्चित करें। यदि आपके प्रोजेक्ट नाम में रिक्त स्थान हैं तो स्पेस को अंडरस्कोर से प्रतिस्थापित करें। (उदाहरण के लिए, "माई उदाहरण प्रोजेक्ट" @testable import My_Example_Project
का उपयोग करेगा।)
मैं testMethodNameBeingTested_Senario_ExpectedBehavior
के नामकरण पैटर्न का पालन कर रहा हूं। यूनिट टेस्ट नाम "परीक्षण" से शुरू होना चाहिए।
मैं इस तरह कुछ करना होगा:
import XCTest
@testable import MyProject
class MyProjectTests: XCTestCase {
func testSum_TwoNumbers_ReturnsSum() {
// Arrange (set up the needed objects)
let myClass = MyClass()
// Act (run the method you want to test)
let sum = myClass.sum(1, 2)
// Assert (test that the behavior is as expected)
XCTAssertEqual(sum, 3)
}
}
बेशक
, निर्माण में विफल रहता है क्योंकि हम अब तक नहीं जोड़ा MyClass
वर्ग।
अपनी कक्षा जोड़ें।
मैं MyProject
पर एक स्विफ्ट फ़ाइल जोड़ रहा हूं जिसे MyClass
कहा जाता है।
class MyClass {
func sum(a: Int, _ b: Int) -> Int {
return a + b
}
}
यदि मैं वास्तव में टीडीडी सिद्धांतों का पालन कर रहा था तो मैं केवल फ़ंक्शन नाम जोड़ूंगा, सही मान वापस नहीं लौटाऊंगा। लेकिन अल्पसंख्यक के लिए मैं अभी पूरी विधि पर जाऊंगा।
टेस्ट यूनिट कक्षा या परीक्षण को फिर से चलाने के लिए विधि के आगे परीक्षण बटन दबाएं और इसे पास करना चाहिए।
इसे असफल (यूनिट परीक्षण का एक महत्वपूर्ण हिस्सा) देखने के लिए आप MyClass
की विधि return 0
पर कुछ कर सकते हैं।
आप वापस जाएँ और इसे ठीक करने के लिए और फिर अधिक यूनिट टेस्ट जोड़ सकते हैं: तो फिर तुम निम्नलिखित जब आप परीक्षण चलाने देखना होगा। यदि आप चाहें तो आप विभिन्न कक्षाओं के लिए अन्य यूनिट टेस्ट फाइल भी बना सकते हैं। प्रोजेक्ट नेविगेटर में बस MyProjectTest समूह पर राइट क्लिक करें और "नई फ़ाइल" चुनें, फिर टेस्ट केस क्लास चुनें।
संबंधित
Xcode UI Test example
"जब यह यूनिट परीक्षणों का प्रयोग कर यह लायक है" - कुछ लोगों का तर्क है कि वह हमेशा अपरिहार्य है; मैं कहूंगा कि यह केवल बड़ी परियोजनाओं ** और ** पुस्तकालयों के लिए आवश्यक है। –
खोज [यहां] (http://stackoverflow.com/questions/33207/what-is-the-best-way-to-unit-test-objective-c-code)। इकाई परीक्षण विकल्पों और ट्यूटोरियल पर पूरी जानकारी। – rsswtmr
एक अच्छा उपयोग तब होता है जब आपके पास ऐसा ऐप होता है जो किसी सर्वर से यूआरएल कनेक्शन बनाता है। ऐप चलाने के बिना उन्हें परीक्षण करने के लिए आप इकाई परीक्षण में अलग से सेट कर सकते हैं। –