ฟีเจอร์บัญชีทดสอบ Merchant API มีพื้นที่ที่ปลอดภัยและแยกต่างหากเพื่อทดสอบการผสานรวมอย่างละเอียดก่อนที่จะนำไปใช้ในสภาพแวดล้อมที่ใช้งานจริง การใช้บัญชีทดสอบในแซนด์บ็อกซ์ช่วยให้คุณทดลองใช้การเรียก API, ตรวจสอบโค้ด และระบุปัญหาที่อาจเกิดขึ้นในช่วงต้นของวงจรการพัฒนาได้โดยไม่ส่งผลต่อข้อมูลจริง ขัดขวางการดำเนินงานแบบเรียลไทม์ หรือละเมิดนโยบาย Merchant Center โดยไม่ตั้งใจ
ข้อกำหนดเบื้องต้น
ก่อนที่จะสร้างและใช้บัญชีทดสอบได้ โปรดตรวจสอบว่าคุณมีคุณสมบัติตรงตามข้อกำหนดต่อไปนี้
- บัญชี Merchant Center: คุณต้องมีบัญชี Merchant Center
- สิทธิ์เข้าถึง Merchant API: คุณต้องเป็น ผู้ใช้ที่ลงทะเบียน ของ Merchant API
สิทธิประโยชน์ของบัญชีทดสอบ
การใช้บัญชีทดสอบมีข้อดีหลักๆ หลายประการ ดังนี้
- การตั้งค่าที่ง่าย: การตั้งค่าบัญชีทดสอบเป็นกระบวนการที่มีความซับซ้อนต่ำ ซึ่งช่วยให้คุณเริ่มทดสอบฟีเจอร์และการผสานรวมได้อย่างรวดเร็ว
- ความสมบูรณ์และความปลอดภัยของข้อมูล: ข้อมูลการผลิตจะยังคงได้รับการปกป้อง และ ความเสี่ยงในการละเมิดนโยบายในบัญชีการผลิตจะหมดไป
- ประสิทธิภาพการทดสอบ: คุณสามารถทดสอบสถานการณ์ที่หลากหลายและเคสขอบได้โดยไม่ต้องรับภาระในการดูแลบัญชีการผลิตคู่ขนานเพื่อวัตถุประสงค์ในการทดสอบ
- การตรวจสอบข้อเสนอทันที: ใช้ประโยชน์จากการยกเว้นอัตโนมัติ จากการอ้างสิทธิ์และการยืนยันในหน้าแรกสำหรับบัญชีทดสอบเพื่อทดสอบ การแทรกข้อเสนออย่างรวดเร็ว ระบบจะอนุมัติข้อเสนอสำหรับบัญชีทดสอบโดยค่าเริ่มต้น
- การจำลองที่สมจริง: สภาพแวดล้อมจะจำลองลักษณะการทำงานจริงสำหรับฟังก์ชันการทำงานที่สำคัญ เช่น การอัปโหลดผลิตภัณฑ์และการจัดการพื้นที่โฆษณา เพื่อให้มั่นใจว่าผลการทดสอบมีความน่าเชื่อถือ
- การย้ายข้อมูล API ที่ราบรื่นยิ่งขึ้น: บัญชีทดสอบช่วยให้การเปลี่ยนผ่านเป็นไปอย่างมั่นใจและราบรื่นสำหรับผู้ที่ย้ายจาก Content API ไปยัง Merchant API หรือจาก 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 CenterACCESS_TOKEN: โทเค็นการให้สิทธิ์เพื่อทำการเรียก APITEST_ACCOUNT_NAME: ชื่อบัญชีทดสอบ เรา ขอแนะนำให้ใช้ชื่อที่มีความหมายซึ่งบ่งบอกว่าใช้สำหรับการทดสอบ เช่น มีคำว่าtestในชื่อบัญชีทดสอบ
เมื่อสร้างบัญชีทดสอบ คุณต้องกรอกข้อมูลในช่องต่อไปนี้
time_zone: เขตเวลาในการรายงานและการแสดงผลสำหรับบัญชีlanguage_code: รหัสภาษา BCP-47 สำหรับบัญชี เช่นen-US
การเรียกที่สำเร็จจะแสดงผลทรัพยากร
Account
ซึ่งมี 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"
}
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีสร้างบัญชีทดสอบ
Java
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"
}'
บัญชีทดสอบและบัญชีย่อยขั้นสูง
accounts.createTestAccount วิธีนี้จะสร้างบัญชีทดสอบแบบสแตนด์อโลนเสมอ
วิธีกำหนดค่าลำดับชั้นของบัญชีขั้นสูง
สำหรับการทดสอบ
- สร้างบัญชีทดสอบแบบสแตนด์อโลนโดยใช้
accounts.createTestAccount - เปลี่ยนบัญชีทดสอบแบบสแตนด์อโลนนั้นเป็นบัญชีขั้นสูง ใน Merchant Center โดยทำตามคำแนะนำจากบทความในศูนย์ช่วยเหลือ เปลี่ยนไปใช้บัญชีขั้นสูง
- สร้างบัญชีย่อยทดสอบเพิ่มเติมภายใต้บัญชีทดสอบขั้นสูงโดย
เรียก
accounts.createAndConfigureและระบุบัญชีทดสอบขั้นสูงเป็นผู้ให้บริการaccountAggregationระบบจะสร้างบัญชีย่อยที่สร้างขึ้นภายใต้บัญชีผู้ให้บริการทดสอบเป็นบัญชีทดสอบ (testAccount: true) โดยอัตโนมัติ
ข้อจำกัด
บัญชีทดสอบออกแบบมาเพื่อการตรวจสอบฟังก์ชันการทำงานและมีข้อจำกัดเฉพาะดังนี้
- จำนวนบัญชีทดสอบ: คุณสร้างบัญชีทดสอบได้สูงสุด 5 บัญชีต่อบัญชี Google บัญชีทดสอบจะนับรวมในขีดจํากัดเริ่มต้นของบัญชี Merchant Center ต่อบัญชี Google
- การผสานรวมกับโควต้า Merchant API: จากมุมมองโควต้า API Merchant API จะถือว่าบัญชีทดสอบเป็นบัญชีที่ใช้งานจริง บัญชีทดสอบ มีโควต้าเหมือนกับบัญชีจริง ไม่สามารถเพิ่มโควต้าสำหรับบัญชีทดสอบได้
- การเปลี่ยนบัญชีและบัญชีขั้นสูง: คุณไม่สามารถเปลี่ยนบัญชีปกติ (บัญชีจริง) ไม่ว่าจะเป็นบัญชีแบบสแตนด์อโลนหรือบัญชีขั้นสูง ให้เป็นบัญชีทดสอบ หรือเปลี่ยนบัญชีทดสอบเป็นบัญชีจริง นอกจากนี้ คุณไม่สามารถสร้างบัญชีทดสอบขั้นสูงด้วย
accounts.createTestAccountโดยตรง ก่อนอื่น ให้สร้างบัญชีทดสอบแบบสแตนด์อโลน แล้ว เปลี่ยนเป็นบัญชีขั้นสูง - ไม่มีการแสดงต่อสาธารณะ: ข้อมูลที่ส่งไปยังบัญชีทดสอบจะไม่ได้รับการเผยแพร่ในแพลตฟอร์มของ Google เช่น โฆษณา Search หรือ Shopping
- ปลายทางที่ถูกจำกัด: คุณจะใช้บัญชีทดสอบไม่ได้เมื่อใช้ฟีเจอร์บางอย่าง เช่น
- ข้อจํากัดในการลิงก์: คุณลิงก์บัญชีทดสอบกับบัญชี Google Ads หรือ Google Business Profile อื่นไม่ได้
- ไม่ต้องลงทะเบียนสำหรับบัญชีทดสอบ: คุณไม่สามารถลงทะเบียนสำหรับบัญชีทดสอบได้
แนวทางปฏิบัติแนะนำ
เราขอแนะนำให้ปฏิบัติตามแนวทางปฏิบัติแนะนำบางอย่างเมื่อใช้บัญชีทดสอบ
- การพัฒนาแบบ Sandbox-First: ตรวจสอบฟีเจอร์การผสานรวมใหม่ๆ ในบัญชีทดสอบเสมอก่อนนำไปใช้กับสภาพแวดล้อมฮาร์ดแวร์และซอฟต์แวร์
- การทดสอบการผสานรวมอัตโนมัติ: ใช้บัญชีทดสอบเป็นสภาพแวดล้อมที่เสถียร สำหรับการเรียกใช้การทดสอบการถดถอยอัตโนมัติ
- การตั้งชื่อบัญชีทดสอบ: ใช้
account_nameเพื่อบอกใบ้ถึงวัตถุประสงค์ของ บัญชีทดสอบแต่ละบัญชี เช่น "การทดสอบการย้ายข้อมูล" หรือ "บัญชีทดสอบ การผสานรวม"