मैं एक विंडोज 8 ऐप लिख रहा हूं, और इसके लिए इकाई परीक्षण लिख रहा हूं। विंडोज 8 पर्यावरण के अंदर, स्वचालित फैशन में, मैं उन्हें कैसे चला सकता हूं?विंडोज 8 एचटीएमएल 5 ऐप्स के लिए यूनिट परीक्षण कैसे स्वचालित करें?
यदि मैं सुपर-सरल जावास्क्रिप्ट फ़ाइलों को लिखता हूं, विंडोज 8 पर्यावरण या डोम पर कोई निर्भरता नहीं है, तो मैं इकाई को नोड.जे.एस. के साथ कमांड लाइन से परीक्षण कर सकता हूं। यह बहुत तेज है (एक सेकंड से भी कम)।
यदि मुझे डोम शामिल करने की आवश्यकता है, और मैं अपने डीओएम उपयोग को बहुत नई सुविधाओं में नहीं रखता, तो मैं node.js में jsdom का उपयोग कर सकता हूं और उसी सेटअप और एक ही गति प्राप्त कर सकता हूं।
लेकिन jsdom अधूरा है, और कई बार मैं WinJS बेस लाइब्रेरी (उदा। WinJS.Promise
) या Windows.*
गणनाओं जैसे मूल विंडोज 8 सुविधाओं का उपयोग करना चाहता हूं। और आदर्श रूप में मुझे उसी जेएस इंजन और डीओएम पर्यावरण में परीक्षण करना चाहिए क्योंकि मेरा ऐप वास्तव में चल रहा है।
तो आदर्श रूप में मुझे एक परीक्षण धावक की आवश्यकता है: एक हल्के विंडोज 8 एचटीएमएल 5 कंटेनर जो वास्तविक डोम के साथ कुछ यूनिट परीक्षण चला सकता है , और विनजेएस और विंडोज रनटाइम एपीआई तक पहुंच। निर्माण प्रक्रिया में एकीकरण के लिए, मुझे कमांड लाइन (stdout, stderr) पर परिणामों की रिपोर्ट करने की क्षमता और सफलता या विफलता के आधार पर मेरे परीक्षण धावक के रिटर्न कोड को बदलने की भी आवश्यकता है। और यह पूरी तरह से स्वचालित, पृष्ठभूमि में चलने योग्य, और बहुत तेज़ (10 सेकंड से कम) होना चाहिए।
मुझे पता है कि वेबकिट के लिए इस तरह के टूल्स हैं, उदा। PhantomJS। विंडोज रनटाइम एचटीएमएल 5 पर्यावरण के लिए ऐसी चीज मौजूद है? यदि नहीं, तो मुझे ऐसा कुछ बनाने के लिए किन एपीआई देखना चाहिए?