এই নির্দেশিকাটি বর্ণনা করে কিভাবে Firebase Test Lab এ পরীক্ষার জন্য একটি XCTest প্রস্তুত করতে হয়।
ধাপ ১ : আপনার প্রকল্পের ডেরাইভড ডেটা লোকেশন কনফিগার করুন
Xcode আপনার তৈরি করা যেকোনো পরীক্ষা সহ সংকলিত iOS আর্টিফ্যাক্টগুলিকে একটি Derived Data ডিরেক্টরিতে রাখে। আপনি যদি চান, তাহলে সেই ডিরেক্টরির জন্য ডিফল্ট অবস্থান রাখা সম্ভব, তবে ফাইলগুলির জন্য আরও সহজে অ্যাক্সেসযোগ্য স্থান বেছে নেওয়া প্রায়শই সহায়ক, বিশেষ করে যদি আপনি প্রায়শই Test Lab দিয়ে পরীক্ষা চালাতে যাচ্ছেন:
- আপনার প্রকল্পটি Xcode এ খুলুন।
- macOS মেনু বারে, File > Project Settings... নির্বাচন করুন।
- ডিফল্ট অবস্থান থেকে প্রাপ্ত ডেটা ড্রপ-ডাউনটি কাস্টম অবস্থানে পরিবর্তন করুন।
- ড্রপ-ডাউনের নিচের ঘরে, Xcode-এর জন্য একটি অবস্থান নির্বাচন করুন যেখানে আপনার পরীক্ষাগুলি আউটপুট করা হবে। (এটি আপনার FOLDER_WITH_TEST_OUTPUT )
ধাপ ২ : একটি জেনেরিক টেস্ট ফাইল তৈরি করুন
Test Lab XCTest ফ্রেমওয়ার্ক ব্যবহার করে ইউনিট পরীক্ষা এবং UI পরীক্ষা চালায়। Test Lab ডিভাইসে আপনার অ্যাপের XCTests চালানোর জন্য, এটি একটি জেনেরিক iOS ডিভাইসে পরীক্ষার জন্য তৈরি করুন:
- আপনার Xcode ওয়ার্কস্পেস উইন্ডোর উপরে থাকা ডিভাইস ড্রপ-ডাউন থেকে, Generic iOS Device নির্বাচন করুন।
- macOS মেনু বারে, Product > Build For > Testing নির্বাচন করুন।
বিকল্প হিসেবে, আপনি কমান্ড লাইন থেকে আপনার XCTest তৈরি করতে পারেন। টার্মিনালে নিম্নলিখিত কমান্ডটি ব্যবহার করুন:
প্রকল্প
xcodebuild -project PATH/TO/YOUR_WORKSPACE/YOUR_PROJECT.xcodeproj \ -scheme YOUR_SCHEME \ -derivedDataPath FOLDER_WITH_TEST_OUTPUT \ -sdk iphoneos build-for-testing
কর্মক্ষেত্র
xcodebuild -workspace PATH/TO/YOUR_WORKSPACE.xcworkspace \ -scheme YOUR_SCHEME \ -derivedDataPath FOLDER_WITH_TEST_OUTPUT \ -sdk iphoneos build-for-testing
ধাপ ৩ : আপনার পরীক্ষায় স্বাক্ষর করুন এবং যাচাই করুন
অ্যাপ এবং টেস্টের সমস্ত আর্টিফ্যাক্ট স্বাক্ষরিত আছে কিনা তা নিশ্চিত করুন। উদাহরণস্বরূপ, আপনি প্রোফাইল এবং পরিচয়ের প্রভিশনিং এর মতো সাইনিং সেটিংস নির্দিষ্ট করে Xcode এর মাধ্যমে এটি করতে পারেন। আরও তথ্যের জন্য, Apple Code Signing দেখুন।
codesign --verify --deep --verbose /path/to/MyApp.appচালিয়ে অ্যাপের স্বাক্ষর যাচাই করুন যেখানে আনজিপ করা ফোল্ডারের ভিতরে "MyApp" অ্যাপের নাম। এটি প্রতিটি প্রকল্পের জন্য পরিবর্তিত হয়। প্রত্যাশিত আউটপুট হলMyApp.app: valid on disk।যদি আপনি একটি XCUITest চালাচ্ছেন, তাহলে আপনাকে
codesign --verify --deep --verbose /path/to/MyTest-Runner.appচালিয়ে পরীক্ষা এবং রানার যাচাই করতে হবে যেখানে "MyTest" হল আনজিপ করা ফোল্ডারের ভিতরে রানারের নাম। এটি প্রতিটি প্রকল্পের জন্য পরিবর্তিত হয়। প্রত্যাশিত আউটপুট হলMyTest-Runner.app: valid on disk।
ধাপ ৪ : আপনার অ্যাপটি প্যাকেজ করুন এবং আপলোড করার জন্য পরীক্ষা করুন
আপনার পরীক্ষা সফলভাবে তৈরি হওয়ার পরে, Test Lab আপলোড করার জন্য এটি জিপ করুন:
cd FOLDER_WITH_TEST_OUTPUT/Build/Products : \ zip -r MyTests.zip Debug-iphoneos YOUR_SCHEME_iphoneosDEPLOYMENT_TARGET-arm64.xctestrun
আপনি পরীক্ষার ফাইলগুলি ম্যানুয়ালি সংকুচিত করেও আপনার পরীক্ষা প্যাকেজ করতে পারেন:
ফাইন্ডার খুলুন এবং
FOLDER_WITH_TEST_OUTPUTএ নেভিগেট করুন।যে ফোল্ডারে আপনার প্রোজেক্টের নাম প্রিফিক্স হিসেবে আছে সেটি খুলুন, তারপর ভিতরে থাকা
Build/Productsফোল্ডারে যান।Debug-iphoneosএবংYOUR_SCHEME _iphoneos DEPLOYMENT_TARGET -arm64.xctestrunফোল্ডারগুলি নির্বাচন করুন এবং তারপর সেগুলিকে সংকুচিত করুন।
ধাপ ৫ : (ঐচ্ছিক) স্থানীয়ভাবে আপনার পরীক্ষা চালান
Test Lab দিয়ে আপনার পরীক্ষা চালানোর আগে, আপনি এটির আচরণের মান পরীক্ষা করার জন্য একটি USB-সংযুক্ত ডিভাইস দিয়ে স্থানীয়ভাবে চালাতে পারেন:
xcodebuild test-without-building \
-xctestrun "Derived Data/Build/Products/YOUR_SCHEME.xctestrun" \
-destination id=your-phone-idপরবর্তী পদক্ষেপ
Firebase কনসোল অথবা gcloud CLI তে আপনার পরীক্ষা আপলোড করুন এবং চালান।