मेरे ज्ञान के लिए एसबीटी इस पर नियंत्रण नहीं करता है। जब एसबीटी आपके यूनिट परीक्षणों का निरीक्षण करता है तो उचित परीक्षण ढांचे का आह्वान करने जा रहा है। परीक्षण ढांचा तब तय कर सकता है कि परीक्षणों को चलाने के क्रम में, उन्हें एक साथ चलाने के लिए, मुद्दों की रिपोर्ट कैसे करें आदि। बेशक प्रत्येक टेस्ट फ्रेमवर्क की अपनी विशेषताएं, कॉन्फ़िगरेशन और सम्मेलन होते हैं। स्कैला के लिए दो सबसे व्यापक रूप से उपयोग किए जाने वाले टेस्ट फ्रेमवर्क स्कालाटेस्ट और स्पेक्स 2 हैं।
सौभाग्य से आप स्पीक्स 2 या स्कैलाटेस्ट में आपके द्वारा अनुरोधित व्यवहार प्राप्त कर सकते हैं। मैंने नीचे सरल यूनिट परीक्षण उदाहरण प्रदान किए हैं जो जल्दी विफल हो जाते हैं।
ScalaTest
आप CancelAfterFailure विशेषता में मिश्रण से एक परीक्षण सूट के लिए ScalaTest में असफल फास्ट व्यवहार प्राप्त कर सकते हैं। उदाहरण के लिए, यह परीक्षण पहले परीक्षण को निष्पादित करेगा, दूसरा विफल होगा, और तीसरे को रद्द के रूप में दिखाएगा।
class SomeSuite extends FunSuite with CancelAfterFailure with Assertions {
test("first") {
println("first")
}
test("second") {
assert(false)
}
test("third") {
println("third")
}
}
Specs2
आप प्रति-विशिष्टता के आधार पर Specs2 में व्यवहार को नियंत्रित कर सकते हैं ScalaTest की ही तरह। असफल-तेज़ी से व्यवहार करने के लिए आपको अपने विशिष्टता में दो तर्क जोड़ने की आवश्यकता है: sequential
और stopOnFail
। आपके द्वारा सेट किए गए तर्कों की पूरी सूची के लिए the docs देखें। (आप की क्या ज़रूरत है दोनों आप एक स्पष्ट रैखिक आदेश Specs2 के बाद से अपने परीक्षण समवर्ती निष्पादित करेंगे डिफ़ॉल्ट रूप से चाहते हैं!)
class SomeSpec extends Specification {
sequential
stopOnFail
"specs2" should {
"first" in {
println("first")
ok
}
"second" in {
"foo" must equalTo ("bar")
}
"third" in {
println("third")
}
}
}
स्रोत
2016-06-23 16:33:13
ओपी परीक्षण समय पर नहीं संकलन समय पर तेजी से नाकाम रहने के बारे में पूछ रहा था। –