توفّر ميزة "حسابات اختبار Merchant API" مساحة آمنة ومعزولة لاختبار عمليات التكامل بدقة قبل نشرها في بيئة نشطة. باستخدام حسابات الاختبار في البيئة التجريبية، يمكنك تجربة طلبات واجهة برمجة التطبيقات والتحقّق من صحة الرموز البرمجية وتحديد المشاكل المحتملة في مرحلة مبكرة من دورة التطوير، بدون التأثير في بيانات الإنتاج أو مقاطعة العمليات في الوقت الفعلي أو انتهاك سياسات Merchant Center عن غير قصد.
المتطلبات الأساسية
قبل أن تتمكّن من إنشاء حسابات الاختبار واستخدامها، تأكَّد من استيفاء المتطلبات التالية:
- حساب على Merchant Center: يجب أن يكون لديك حساب على Merchant Center.
- إمكانية الوصول إلى Merchant API: يجب أن تكون مستخدمًا مسجّلاً في Merchant API.
مزايا حسابات الاختبار
يوفّر استخدام حسابات الاختبار العديد من المزايا الرئيسية:
- إعداد بسيط: عملية إعداد حساب الاختبار بسيطة وتتيح لك البدء بسرعة في اختبار ميزاتك وعمليات التكامل.
- سلامة البيانات وأمانها: تبقى بيانات الإنتاج محمية، ويتم التخلّص من خطر انتهاك السياسات في حسابات الإنتاج.
- كفاءة الاختبار: يمكنك اختبار مجموعة كبيرة من السيناريوهات المتنوّعة والحالات القصوى بدون عبء الاحتفاظ بحساب إنتاج موازٍ لأغراض الاختبار.
- التحقّق الفوري من صحة العروض: يمكنك الاستفادة من الإعفاء التلقائي من المطالبة بالصفحة الرئيسية والتحقّق منها لحسابات الاختبار من أجل اختبار عمليات إدراج العروض بسرعة. تتم الموافقة على العروض تلقائيًا لحسابات الاختبار.
- محاكاة واقعية: تعكس البيئة سلوك الإنتاج للوظائف الأساسية، مثل عمليات تحميل المنتجات وإدارة المخزون، ما يضمن موثوقية نتائج الاختبار.
- عمليات نقل بيانات أكثر سلاسة في واجهة برمجة التطبيقات: تسهّل حسابات الاختبار عملية الانتقال بثقة وسلاسة من Content API إلى Merchant API أو من إصدار واجهة برمجة تطبيقات إلى آخر من خلال السماح بالتحقّق من صحة البيانات جنبًا إلى جنب.
كيفية إنشاء حسابات الاختبار
يتم إنشاء حسابات الاختبار باستخدام طريقة مخصّصة معيّنة في Merchant API.
استخدِم طريقة accounts.createTestAccount:
POST https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}:createTestAccount
Content-Type: application/json
Authorization: Bearer {ACCESS_TOKEN}"
{
"account_name": "{TEST_ACCOUNT_NAME}",
"time_zone": {
"id": "America/Los_Angeles"
},
"language_code": "en-US"
}
غيِّر القيم في السلسلة على الشكل التالي:
ACCOUNT_ID: معرّف Merchant Center الخاص بك.ACCESS_TOKEN: رمز التفويض لتقديم طلب بيانات من واجهة برمجة التطبيقاتTEST_ACCOUNT_NAME: اسم حساب الاختبار ننصحك باستخدام أسماء ذات معنى تشير إلى أنّها تُستخدَم للاختبار. على سبيل المثال، يجب أن يتضمّن اسم حساب الاختبار كلمةtest
الحقول التالية مطلوبة عند إنشاء حساب اختبار:
time_zone: المنطقة الزمنية لإعداد التقارير والعرض في الحسابlanguage_code: رمز اللغة BCP-47 للحساب، مثلen-US
يعرض الطلب الناجح مورد
حساب
يتضمّن accountId فريدًا واسم المورد
لحساب الاختبار الجديد:
{
"name": "accounts/{TEST_ACCOUNT_ID}",
"accountId": "{TEST_ACCOUNT_ID}",
"accountName": "{TEST_ACCOUNT_NAME}",
"adultContent": false,
"testAccount": true,
"timeZone": {
"id": "America/Los_Angeles"
},
"languageCode": "en-US"
}
تعرض عيّنات التعليمات البرمجية التالية كيفية إنشاء حساب اختبار:
جافا
import com.google.api.gax.core.FixedCredentialsProvider;
import com.google.auth.oauth2.GoogleCredentials;
import com.google.shopping.merchant.accounts.v1.Account;
import com.google.shopping.merchant.accounts.v1.AccountsServiceClient;
import com.google.shopping.merchant.accounts.v1.AccountsServiceSettings;
import com.google.shopping.merchant.accounts.v1.CreateTestAccountRequest;
import com.google.type.TimeZone;
import shopping.merchant.samples.utils.Authenticator;
import shopping.merchant.samples.utils.Config;
/**
* This class demonstrates how to create a new Merchant Center test account.
*
* <p>For more information refer to:
* https://developers.google.com/merchant/api/guides/accounts/test-accounts
*/
public class CreateTestAccountSample {
// Method to create a test account.
public static void createTestAccount(Config config, String newAccountName) throws Exception {
// Obtains OAuth token based on the user's configuration.
GoogleCredentials credential = new Authenticator().authenticate();
// Creates service settings using the credentials retrieved above.
AccountsServiceSettings accountsServiceSettings =
AccountsServiceSettings.newBuilder()
.setCredentialsProvider(FixedCredentialsProvider.create(credential))
.build();
// Calls the API and catches and prints any network failures/errors.
try (AccountsServiceClient accountsServiceClient =
AccountsServiceClient.create(accountsServiceSettings)) {
// The test account to be created.
Account account =
Account.newBuilder()
.setAccountName(newAccountName)
.setTimeZone(TimeZone.newBuilder().setId("Europe/Zurich"))
.setLanguageCode("en-US")
.build();
// Creates parent to identify where to insert the account.
String parent = String.format("accounts/%s", config.getAccountId());
// Create the request message.
CreateTestAccountRequest request =
CreateTestAccountRequest.newBuilder().setParent(parent).setAccount(account).build();
System.out.println("Sending Create Test Account request:");
Account response = accountsServiceClient.createTestAccount(request);
System.out.println("Created Test Account below:");
System.out.println(response);
} catch (Exception e) {
System.err.println("Error during test account creation:");
e.printStackTrace();
}
}
// Main method to run the sample.
public static void main(String[] args) throws Exception {
Config config = Config.load();
// This is the name of the new test account to be created.
String newAccountName = "MyNewTestShop";
createTestAccount(config, newAccountName);
}
}
cURL
curl -X POST \
"https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/:createTestAccount" \
-H "Authorization: Bearer {ACCESS_TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"account_name": "{TEST_ACCOUNT_NAME}",
"time_zone": {
"id": "America/Los_Angeles"
},
"language_code": "en-US"
}'
القيود
تم تصميم حسابات الاختبار للتحقّق من صحة الوظائف، وتفرض قيودًا معيّنة:
- عدد حسابات الاختبار: يمكنك إنشاء 5 حسابات اختبار كحدّ أقصى لكل حساب على Google. تُحتسب حسابات الاختبار ضمن الحدّ التلقائي لحسابات Merchant Center لكل حساب على Google.
- التكامل مع حصص Merchant API: من منظور حصص واجهة برمجة التطبيقات، تعامل Merchant API حسابات الاختبار على أنّها حسابات إنتاج. تخضع حسابات الاختبار للحصص نفسها التي تخضع لها حسابات الإنتاج. لا يمكن زيادة الحصص لحسابات الاختبار.
- الحسابات المتقدّمة: لا يمكنك إنشاء حسابات اختبار متقدّمة أو تحويل حساب متقدّم إلى حساب اختبار.
- عدم العرض العلني: لن يتم نشر البيانات التي يتم إرسالها إلى حساب اختبار على أي منصة من منصات Google، مثل "إعلانات البحث" أو "إعلانات Shopping".
- نقاط النهاية المحظورة: لا يمكنك استخدام حسابات الاختبار عند استخدام ميزات معيّنة، مثل:
- قيود الربط: لا يمكنك ربط حسابات الاختبار بحسابات أخرى على "إعلانات Google" أو "الملف التجاري على Google".
- عدم التسجيل في حسابات الاختبار: لا يمكنك إجراء عملية التسجيل لحسابات الاختبار.
أفضل الممارسات
ننصحك باتّباع بعض أفضل الممارسات عند استخدام حسابات الاختبار:
- التطوير في البيئة التجريبية أولاً: يجب دائمًا التحقّق من صحة ميزات التكامل الجديدة في حساب اختبار قبل تطبيقها على بيئة التشغيل الفعلي.
- اختبار التكامل التلقائي: استخدِم حسابات الاختبار كبيئات ثابتة لإجراء اختبارات الانحدار التلقائية.
- تسمية حساب الاختبار: استخدِم
account_nameللإشارة إلى الغرض من كل حساب اختبار، مثل "اختبار نقل البيانات" أو "حساب اختبار التكامل".