Catch up on everthing we announced at this year's Firebase Summit. Learn more

গ্লকউড সিএলআই দিয়ে পরীক্ষা করুন

Gcloud CLI ব্যবহার করে কিভাবে একটি XCTest বা একটি গেম লুপ পরীক্ষা চালানো যায় তা এই নির্দেশিকা বর্ণনা করে।

ধাপ 1: কনফিগার আপনার স্থানীয় Google মেঘ SDK এর পরিবেশ

  1. ডাউনলোড Google মেঘ SDK এর।
  2. এর মধ্যে রয়েছে gcloud CLI টুল।

  3. নিশ্চিত করুন আপনার ইনস্টলেশন আপ-টু-ডেট এবং অন্তর্ভুক্ত gcloud firebase কমান্ড প্রয়োগ করুন:
          gcloud components update
  4. Gcloud CLI করতে লগ ইন করুন আপনার Google অ্যাকাউন্ট ব্যবহার করছে:
          gcloud auth login
  5. Gcloud, যেখানে আপনার Firebase প্রকল্প সেট PROJECT_ID : আপনার Firebase প্রকল্পের আইডি নয়
         gcloud config set project PROJECT_ID

পদক্ষেপ 2: চালান আপনার পরীক্ষার

একটি XCTest চালান

  1. নিম্নলিখিত কমান্ডের (যদি আপনি এখনো আপনার অ্যাপ আপ প্যাকেজ নি, দেখতে করে আপনার পরীক্ষার .zip ফাইল আপলোড করুন আপনার XCTest প্যাকেজিং ):

    cd FOLDER_WITH_TEST_OUTPUT/Build/Products ; \
    zip -r MyTests.zip Debug-iphoneos YOUR_SCHEME_iphoneosDEPLOYMENT_TARGET-arm64.xctestrun
  2. আপনার পরীক্ষার মাত্রা চয়ন করুন।

    টেস্ট ল্যাব আপনাকে বিভিন্ন iOS সংস্করণ, ডিভাইস, স্ক্রিন ওরিয়েন্টেশন এবং লোকেলে পরীক্ষা চালাতে দেয়। এই কনফিগারেশনের পরীক্ষা টেস্ট মাত্রা বলা হয়। প্রতিটি আয়তনের জন্য অপশন (যেমন, সমর্থিত Xcode ডিভাইসের iOS সংস্করণ জন্য সংস্করণ), বিকল্প দেখার জন্য models , versions , বা locales জন্য dimension নিম্নলিখিত কমান্ড মধ্যে:

    gcloud firebase test ios dimension list

    স্ক্রিন স্থিতিবিন্যাস কিছুটা সহজ, কারণ যার একমাত্র অপশন আছে portrait এবং landscape

    পরীক্ষার মাত্রাগুলির তালিকাটি দেখুন এবং কয়েকটি সংমিশ্রণ নির্বাচন করুন যা আপনি আপনার পরীক্ষা চালাতে চান। পরিদর্শন কামাল প্রাইসিং সমন্বয় আপনার প্রতিদিন চালাতে পারেন সর্বোচ্চ সংখ্যক দেখতে।

  3. একবার আপনি পরীক্ষা মাত্রা একটি সেট চয়ন করেছেন, আপনি টেস্ট ল্যাব ব্যবহার করে আপনার পরীক্ষা সঞ্চালিত হবে থাকতে পারে firebase test ios run কমান্ড। আপনার উপর পরীক্ষা দিতে চাই পরীক্ষা মাত্রা প্রতিটি সংযুক্তির জন্য একটি পৃথক অন্তর্ভুক্ত --device পতাকা:

    gcloud firebase test ios run --test PATH/TO/MyTests.zip \
     --device model=MODEL_ID_1,version=VERSION_ID_1,locale=LOCALE_1,orientation=ORIENTATION_1 \
     --device model=MODEL_ID_2,version=VERSION_ID_2,locale=LOCALE_2,orientation=ORIENTATION_2 \
     etc...

    এটা সম্ভব যে পরীক্ষাটি Xcode সংস্করণ এবং পরীক্ষা ল্যাব দ্বারা ব্যবহৃত ডিফল্ট Xcode সংস্করণের মধ্যে অসামঞ্জস্যতার কারণে ব্যর্থ হবে। আপনার পরীক্ষার জন্য একটি সমর্থিত Xcode সংস্করণ, উল্লেখ করার জন্য ব্যবহার --xcode-version পতাকা:

    gcloud firebase test ios run --test PATH/TO/MyTests.zip \
     --device model=MODEL_ID_1,version=VERSION_ID_1,locale=LOCALE_1,orientation=ORIENTATION_1 \
     --xcode-version=11.3

বিশেষ অধিকারগুলি পরীক্ষা করুন

পরীক্ষা এনটাইটেলমেন্ট একটি সুনির্দিষ্ট অ্যাপ আইডি প্রয়োজন যে করতে, আপনাকে সেটিং দ্বারা তা করতে পারেন --test-special-entitlements পতাকা। টেস্ট ল্যাব একটি নতুন বান্ডেল-আইডেন্টিফায়ার দিয়ে অ্যাপ্লিকেশনটিকে পুনরায় স্বাক্ষর করে যাতে বিশেষ এনটাইটেলমেন্ট সমর্থন করে, তাই অনুগ্রহ করে নিশ্চিত করুন যে আপনার জিপ ফাইলে অ্যাপের বান্ডেল আইডির সরাসরি রেফারেন্স আছে এমন কোন সম্পদ নেই।

পুশ বিজ্ঞপ্তি

ধাক্কা বিজ্ঞপ্তি অনুরোধ অনুমোদন জন্য, ব্যবহারকারীরা গোপন ব্যবহার করে তাদেরকে JSON ওয়েব টোকেন তৈরি করতে পারেন স্বাক্ষরকারী কি C7FD9DJAA8 ও টিম আইডি - - 9CKCGNNUQN কী ID করেন। উত্পন্ন টোকেনগুলি এক ঘন্টার জন্য বৈধ হবে এবং প্রতি 60 মিনিটে রিফ্রেশ করতে হবে। আরও পড়ুন APN গুলি করার জন্য একটি টোকেন ভিত্তিক সংযোগ স্থাপন করা হচ্ছে।

একটি গেম লুপ পরীক্ষা চালান

চালান gcloud beta firebase test ios run কমান্ড রান কনফিগার করতে নিম্নলিখিত পতাকা ব্যবহার করুন:

গেম লুপ পরীক্ষার জন্য পতাকা
--type

আবশ্যক: নির্দিষ্ট করে আইওএস পরীক্ষা আপনি যে প্রকারের চালাতে চান। আপনি পরীক্ষা ধরনের লিখতে পারেন xctest (ডিফল্ট) বা game-loop

--app

আবশ্যক: সুনির্দিষ্ট পাথ (GCS বা ফাইল সিস্টেম থেকে) আপনার অ্যাপ্লিকেশনের আইপিএ ফাইলে। গেম লুপ পরীক্ষা চালানোর সময় এই পতাকাটি বৈধ।

--scenario-numbers

যে লুপগুলি (ওরফে দৃশ্যকল্প) আপনি আপনার অ্যাপে চালাতে চান। আপনি একটি লুপ, একটি তালিকা বা লুপ, বা লুপের একটি পরিসর প্রবেশ করতে পারেন। ডিফল্ট লুপ 1।

উদাহরণস্বরূপ, --scenario-numbers=1-3,5 রান loops 1, 2, 3, ও 5।

--device-model

ফিজিক্যাল ডিভাইস আপনি আপনার পরীক্ষা চালাতে চান (জানতে যা উপলব্ধ ডিভাইস আপনি ব্যবহার করতে পারেন)।

--timeout

সর্বোচ্চ সময়কাল আপনি আপনার পরীক্ষা চালাতে চান। আপনি সেকেন্ডে সময়কালকে প্রতিনিধিত্ব করার জন্য একটি পূর্ণসংখ্যা লিখতে পারেন, অথবা একটি পূর্ণসংখ্যা এবং গণনা সময়ের দীর্ঘ ইউনিট হিসাবে সময়কালকে প্রতিনিধিত্ব করতে পারেন।

উদাহরণ স্বরূপ:

  • --timeout=200 হলে তা 200 সেকেন্ড পর্যন্ত রান বাহিনীর আপনার পরীক্ষার বিনষ্ট।
  • --timeout=1h আপনার পরীক্ষার বাধ্য করে বিনষ্ট যখন এটি এক ঘন্টা পর্যন্ত সময় রান।

উদাহরণস্বরূপ, নিম্নলিখিত কমান্ডটি একটি গেম লুপ পরীক্ষা চালায় যা আইফোন 8 প্লাসে লুপ 1, 4, 6, 7 এবং 8 চালায়:

gcloud beta firebase test ios run
 --type game-loop --app path/to/my/App.ipa --scenario-numbers 1,4,6-8
 --device-model=iphone8plus

Gcloud CLI সম্পর্কে আরো তথ্যের জন্য, দেখুন রেফারেন্স ডকুমেন্টেশন

ধাপ 4 (ঐচ্ছিক): স্বয়ংক্রিয় ভবিষ্যতে আপনি বিল্ড পরীক্ষা

টেস্ট ল্যাবের সাথে স্ক্রিপ্টিং gcloud কমান্ড

আপনি মোবাইল অ্যাপ টেস্টিং কমান্ডগুলিকে স্বয়ংক্রিয় করতে শেল স্ক্রিপ্ট বা ব্যাচ ফাইল ব্যবহার করতে পারেন যা আপনি অন্যথায় gcloud কমান্ড লাইন ব্যবহার করে চালাবেন। এই নমুনা ব্যাশ স্ক্রিপ্টটি দুই মিনিটের সময়সীমার সাথে একটি XCTest চালায় এবং পরীক্ষাটি সফলভাবে সম্পন্ন হলে রিপোর্ট করে:

if gcloud firebase test ios run --test MyTest.zip --timeout 2m
then
    echo "Test matrix successfully finished"
else
    echo "Test matrix exited abnormally with non-zero exit code: " $?
fi

স্ক্রিপ্ট এক্সিট কোড

টেস্ট ল্যাব বেশ কয়েকটি এক্সিট কোড সরবরাহ করে যা আপনি স্ক্রিপ্ট বা ব্যাচ ফাইল ব্যবহার করে চালানো পরীক্ষার ফলাফলগুলি আরও ভালভাবে বুঝতে পারেন।

প্রস্থান কোড মন্তব্য
0 সমস্ত পরীক্ষার ফাঁসি পাস।
একটি সাধারণ ব্যর্থতা ঘটেছে। সম্ভাব্য কারণগুলির মধ্যে রয়েছে: একটি ফাইলের নাম যা বিদ্যমান নেই অথবা একটি HTTP/নেটওয়ার্ক ত্রুটি।
2 অজানা কমান্ড বা আর্গুমেন্ট প্রদান করা হওয়ায় পরীক্ষা বন্ধ হয়ে গেল।
10 একটি বা একাধিক পরীক্ষার ক্ষেত্রে (পরীক্ষিত ক্লাস বা ক্লাস পদ্ধতি) একটি পরীক্ষা কার্যকর করার মধ্যে পাস হয়নি।
15 ফায়ারবেস টেস্ট ল্যাব একটি অপ্রত্যাশিত ত্রুটির কারণে পরীক্ষা ম্যাট্রিক্স পাস বা ব্যর্থ হয়েছে কিনা তা নির্ধারণ করতে পারেনি।
19 পরীক্ষা ম্যাট্রিক্স ব্যবহারকারী দ্বারা বাতিল করা হয়েছে।
20 একটি পরিকাঠামোর ত্রুটি ঘটেছে।

পদক্ষেপ 5: তদন্ত পরীক্ষার ফলাফল

পরীক্ষা শুরু, আপনি টেস্ট ফলাফল পৃষ্ঠায় একটি লিঙ্ক পেলে। আপনার নির্বাচিত বিভিন্ন কনফিগারেশনের সংখ্যা এবং আপনার পরীক্ষার জন্য পরীক্ষার সময়সীমা নির্ধারণের উপর নির্ভর করে পরীক্ষাগুলি চালাতে কয়েক মিনিট সময় নিতে পারে। আপনার পরীক্ষা শেষ হওয়ার পর, আপনি পরীক্ষার ফলাফল পর্যালোচনা করতে পারেন। দেখুন বিশ্লেষণ Firebase টেস্ট ল্যাব ফলাফল কিভাবে আপনার পরীক্ষার ফলাফল ব্যাখ্যা করা সম্পর্কে আরো জানতে।

পরবর্তী পর্ব

Google মেঘ SDK এর ডকুমেন্টেশন পড়ুন পরীক্ষা অপশন যে অন্বেষণ করতে সাধারণভাবে উপলভ্য বা বিটা