Catch up on everything announced at Firebase Summit, and learn how Firebase can help you accelerate app development and run your app with confidence. Learn More

फायरबेस टेस्ट लैब ट्रिगर

संग्रह की मदद से व्यवस्थित रहें अपनी प्राथमिकताओं के आधार पर, कॉन्टेंट को सेव करें और कैटगरी में बांटें.

फायरबेस टेस्ट लैब में टेस्ट मैट्रिक्स के पूरा होने के जवाब में आप एक फंक्शन ट्रिगर कर सकते हैं। उदाहरण के लिए, यदि कोई परीक्षण विफल हो जाता है, तो आप स्लैक चैनल को सूचित कर सकते हैं या ईमेल भेज सकते हैं।

अधिक उदाहरण के उपयोग के मामलों के लिए, देखें कि मैं क्लाउड फ़ंक्शंस के साथ क्या कर सकता हूँ? .

टेस्टमैट्रिक्स पूरा होने पर एक फ़ंक्शन ट्रिगर करें

एक नया फ़ंक्शन बनाएं जो तब ट्रिगर होता है जब एक TestMatrix ईवेंट हैंडलर के साथ पूरा करता है functions.testLab.testMatrix().onComplete() :

exports.sendEmailNotification = functions.testLab.testMatrix().onComplete((testMatrix) => {
  // ...
});

परीक्षण राज्यों और परिणामों को संभालें

आपके फ़ंक्शन के प्रत्येक निष्पादन को TestMatrix पास किया जाता है जिसमें मैट्रिक्स की अंतिम स्थिति और समस्याओं को समझने में सहायता के लिए विवरण शामिल होते हैं।

exports.handleTestMatrixCompletion = functions.testLab.testMatrix().onComplete(testMatrix => {
  const matrixId = testMatrix.testMatrixId;
  switch (testMatrix.state) {
    case 'FINISHED':
      console.log(`TestMatrix ${matrixId} finished with outcome: ${testMatrix.outcomeSummary}`);
      break;
    case 'INVALID':
      console.log(`TestMatrix ${matrixId} was marked as invalid: ${testMatrix.invalidMatrixDetails}`);
      break;
    default:
      console.log(`TestMatrix ${matrixId} completed with state ${testMatrix.state}`);
  }
  return null;
});

क्लाइंट विवरण एक्सेस करें

टेस्ट मैट्रिसेस विभिन्न स्रोतों या वर्कफ़्लोज़ से बनाए जा सकते हैं। इसलिए अक्सर ऐसे कार्यों का निर्माण करना वांछनीय होता है जो परीक्षण के स्रोत या अन्य महत्वपूर्ण संदर्भ के आधार पर विभिन्न क्रियाएं करते हैं। इसमें मदद करने के लिए, gcloud आपको एक परीक्षण शुरू करते समय मनमानी जानकारी पास करने की अनुमति देता है जिसे बाद में आपके फ़ंक्शन में एक्सेस किया जा सकता है। उदाहरण के लिए:

gcloud beta firebase test android run \
    --app=path/to/app.apk \
    --client-details testType=pr,link=https://path/to/pull-request

उदाहरण समारोह:

exports.notifyOnPullRequestFailure = functions.testLab.testMatrix().onComplete(testMatrix => {
  if (testMatrix.clientInfo.details['testType'] != 'pr') {
    // Not a pull request
    return null;
  }

  if (testMatrix.state == 'FINISHED' && testMatrix.outcomeSummary == 'SUCCESS') {
    // No failure
    return null;
  }

  const link = testMatrix.clientInfo.details['link'];
  let message = `Test Lab validation for pull request ${link} failed. `;

  if (!!testMatrix.resultStorage.resultsUrl) {
    message += `Test results available at ${testMatrix.resultStorage.resultsUrl}. `;
  }

  // Send notification here ...
});