توفّر ميزة "حسابات اختبار 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، مثل "بحث Google" أو "إعلانات Shopping".
- نقاط النهاية المحظورة: لا يمكنك استخدام حسابات الاختبار عند استخدام ميزات معيّنة، مثل:
- قيود الربط: لا يمكنك ربط حسابات الاختبار بحسابات أخرى على "إعلانات Google" أو "الملف التجاري على Google".
- عدم التسجيل في الحسابات التجريبية: لا يمكنك إجراء عملية التسجيل للحسابات التجريبية.
أفضل الممارسات
ننصحك باتّباع بعض أفضل الممارسات عند استخدام الحسابات التجريبية:
- التطوير باستخدام بيئة الاختبار أولاً: يجب دائمًا التحقّق من صحة ميزات الدمج الجديدة في حساب تجريبي قبل تطبيقها على بيئة الإنتاج.
- اختبارات الدمج الآلية: استخدِم حسابات الاختبار كبيئات ثابتة لتشغيل اختبارات الانحدار الآلية.
- تسمية حساب الاختبار: استخدِم
account_nameللإشارة إلى الغرض من كل حساب اختبار، مثل "اختبار نقل البيانات" أو "حساب اختبار الدمج".