unit-testing - इकाई परीक्षण का अर्थ



कैसे यूनिट परीक्षण Google Apps स्क्रिप्ट करने के लिए? (3)

मैं Google ऐप स्क्रिप्ट के लिए यूनिट परीक्षणों के साथ सेटअप करने की कोशिश कर रहा हूं, और मुझे दो परियोजनाएं मिलीं:

https://code.google.com/p/gas-unit/ https://code.google.com/p/gasunit/

इसलिए मैं उलझन में हूँ जिसका उपयोग करने के लिए :-)

मुझे सिर्फ एक नापसंद गैसोनिट के साथ जाना था, जो उम्मीद करता है कि स्क्रिप्ट एक स्प्रैडशीट में एम्बेडेड है, जिसे मैं कैसे करना है पर थोड़ा सा अस्पष्ट है ... और स्क्रिप्ट जो मैं करना चाहता हूं वह स्पीडशीट की बजाय वेब आधारित स्क्रिप्ट है लोगों

मैं अधिक भाग्य वाले हायफ़ेनेटेड गैस-यूनिट का परीक्षण कर रहा था, जो मुझे परीक्षा के एक ईमेल आउटपुट को भेजने और मेरी Google साइट में परिणाम पृष्ठ उत्पन्न करने में कामयाब रहा था:

https://sites.google.com/site/testappscript2/TestResults

इसलिए मैं इस समय गैस-यूनिट के साथ जा रहा हूं, लेकिन मैं वास्तव में Google द्वारा निगमित कुछ आधिकारिक परीक्षण ढांचे को देखना चाहता हूं। विशेष रूप से मैं इन स्क्रिप्ट को कुछ आवृत्ति के साथ चलाने के लिए कुछ रास्ता खोजना चाहता हूं ताकि मुझे परिणाम भेज सकें। इसके अलावा मुझे कुछ बीडीडी जा रहे हैं; मेरे अन्य पोस्ट देखें:

कैसरबारा का इस्तेमाल कैसे करें, बाहरी कैबिनेट के खिलाफ काम करने के लिए ककड़ी / कैपेबारा / मैकेनिक कैसे प्राप्त करें

Google पर आओ, आप अपने सभी बाथरूमों में "टेस्टिंग रॉक्स, डीबगिंग बेक" में प्रसिद्ध हैं? Google Apps लिपियों के लिए बेहतर परीक्षण समर्थन के बारे में कैसे?

https://ffff65535.com


आप Google Apps स्क्रिप्ट के लिए क्वीनिट आज़मा सकते हैं। यह क्वीनिट के लिए एक पैच है जिसे API दस्तावेज़ों के साथ Google Apps स्क्रिप्ट लाइब्रेरी में बदल दिया गया है।

आपको केवल एक स्क्रिप्ट परियोजना है जो कि एक क्विकट लाइब्रेरी आयात करती है (उदाहरण के लिए प्रोजेक्ट की प्रमुख MxL38OxqIK-B73jyDTvCe-OBao7QLBR4j ) और एक doGet फ़ंक्शन है जो यूपीएल पैरामीटरों का उपयोग करके क्वांट को कॉन्फ़िगर करता है और वैकल्पिक रूप से आपकी खुद की सेटिंग्स के साथ भी एक फ़ंक्शन को लोड करता है अपने परीक्षण चलाता है, और अंत में QUnit.getHtml () देता है यहाँ एक उदाहरण है:

function doGet( e ) {
  QUnit.urlParams( e.parameter );
  QUnit.config({ title: "Unit tests for my project" });
  QUnit.load( myTests );
  return QUnit.getHtml();
};

// Imports the following functions:
// ok, equal, notEqual, deepEqual, notDeepEqual, strictEqual,
// notStrictEqual, throws, module, test, asyncTest, expect
QUnit.helpers(this);

function myTests() {
  module("dummy module");

  test("dummy test", 1, function() {
    ok(true);
  });
}

फिर स्क्रिप्ट को अधिकृत करें, इसके एक संस्करण को सहेजें, स्क्रिप्ट प्रोजेक्ट प्रकाशित करें ("वेब एप्लिकेशन के रूप में तैनात करें") और अपने ब्राउज़र के साथ परीक्षण यूआरएल ("नवीनतम कोड") पर जाएं। आपके परीक्षण चलाए जाएंगे और HtmlService के माध्यम से परिणाम प्रदर्शित किए जाएंगे। आप उनके तर्कों को देखने के लिए उन पर एकल-क्लिक कर सकते हैं, लेकिन इसे लिखने के रूप में, आप संभवत: फ़ायरफ़ॉक्स 20 और 21 में कजा अंक 1688 के कारण ऐसा नहीं कर पाएंगे।


मैंने गैस-यूनिट ( https://code.google.com/p/gas-unit/ ) बनाया है और पिछले कुछ दिनों में उदाहरणों को ट्रिगर करने और एक HTML टेस्ट रनर जोड़ने पर थोड़ा समय बिताया है।

मैं कुछ स्प्रैडशीट हेरफेर के लिए स्वयं का उपयोग कर रहा हूं जो मैं उचित सफलता के साथ कर रहा हूं। मैं जैस्मीन का इस्तेमाल गैर-जीएएस ग्राहक पक्ष जेएस के काम के लिए कर रहा हूं और वास्तव में इसका आनंद उठाया है। मैं आसानी से जागने के लिए गैस-यूनिट में क्षमता की कमी महसूस करता हूं और मैं विनिर्देशन लेखन की बीडीडी शैली का समर्थन करता हूं।

गैस-इकाई मेरे लिए एक महान सीखने की कला रही है और यह काम करता है, हालांकि गुंजाइश और समापन के साथ अनदेखी हुई समस्याएं हो सकती हैं - यह मेरी पहली महत्वपूर्ण जेएस व्यायाम डोम हेरफेर के बाहर है

मुझे लगता है कि जीएएस में परीक्षण के लिए भविष्य में क्वीनिट के बंदरगाह (जैसा कि एडम ने सुझाव दिया है) या जैस्मीन के साथ होना चाहिए। मुझे बंदरगाह जैस्मीन के लिए क्या करना होगा पर एक त्वरित रूप से देखा था लेकिन अभी तक इसे निपटने के लिए समय नहीं मिल पा रहा है।


मानक जावास्क्रिप्ट पैकेज और स्वचालित परीक्षण टूलिंग का उपयोग करने की अनुमति देने के लिए अब एक नोड-गूगल-ऐप-स्क्रिप्ट पैकेज है।

  1. npm install -g node-google-apps-script
  2. एप्लिकेशन स्क्रिप्ट प्रोजेक्ट को अपलोड करने और आयात करने की अनुमति देने के लिए ग्राहक रहस्य प्रदान करने के लिए प्राधिकरण के चरणों के माध्यम से जाएं।
  3. सामान्य जावास्क्रिप्ट प्रोजेक्ट चलाते हुए gulp या grunt उपयोग करें या जो कुछ भी आप उपयोग करते हैं gulp प्रयोग करें।

इस वर्कफ़्लो का उपयोग करने वाला एक आधिकारिक Google नमूना उपलब्ध है

अधिक जानकारी के लिए Google Apps डेवलपर ब्लॉग पोस्ट घोषणा देखें





google-apps-script