การทดสอบคืออินเทอร์เฟซสำหรับจัดการแคมเปญทดสอบที่เกี่ยวข้องกับฐาน แคมเปญ แคมเปญการทดสอบคือแคมเปญที่สมบูรณ์ซึ่งสามารถแสดงโฆษณาได้ และเพิ่มจำนวนคลิก ค่าใช้จ่าย และเมตริกอื่นๆ
ขั้นตอนแรกในการเรียกใช้การทดสอบโดยใช้ Google Ads API คือการสร้าง
Experiment
ทรัพยากรนี้กำหนดคีย์บางรายการ
ข้อมูลเกี่ยวกับการทดสอบที่คุณต้องการเรียกใช้ เช่น ชื่อและการทดสอบ
ประเภท คุณไม่ได้ระบุแคมเปญใดๆ ที่เกี่ยวข้องกับการทดสอบที่
ขั้นตอนนี้
ภาพรวมของช่องหลักบางช่องสำหรับ Experiment
มีดังนี้
name
: การทดสอบแต่ละรายการต้องมีชื่อที่ไม่ซ้ำกันdescription
: ช่องที่ไม่บังคับซึ่งใช้อ้างอิงในภายหลังได้ ไหม ไม่มีผลต่อวิธีการทดสอบsuffix
: คำต่อท้ายจะต่อท้ายชื่อของ แคมเปญกลุ่มทดสอบเพื่อให้คุณแยกความแตกต่างจากแคมเปญควบคุมได้ แนวคิดเหล่านี้จะได้รับการอธิบายเพิ่มเติมในการทดสอบ กลุ่มtype
: ประเภทการทดสอบที่จะเรียกใช้ ซึ่งมีหลายประเภทที่นี่ แต่ส่วนใหญ่ ในจำนวนนี้เป็นการทดสอบระบบ สำหรับการทดสอบที่กำหนดเอง คุณควรทำดังนี้ ระบุSEARCH_CUSTOM
หรือDISPLAY_CUSTOM
status
: เมื่อสร้างการทดสอบ ให้ตั้งค่าช่องนี้เป็นSETUP
หลังจากนั้น เมื่อคุณเริ่มการทดสอบ ฟิลด์นี้จะ ให้คุณตรวจสอบว่า กำลังทำอยู่start_date
และend_date
: ระบุเวลาที่การทดสอบควรเริ่มต้นและ สิ้นสุดsync_enabled
: ปิดใช้งานโดยค่าเริ่มต้น หากตั้งค่าเป็นtrue
ระบบจะทำการเปลี่ยนแปลง ระบบจะคัดลอกแคมเปญเดิมขณะที่การทดสอบทำงานอยู่โดยอัตโนมัติ ลงในแคมเปญทดสอบ เรียนรู้ เพิ่มเติม
ต่อไปนี้คือตัวอย่างของการสร้างการทดสอบ
Java
private String createExperimentResource(GoogleAdsClient googleAdsClient, long customerId) { ExperimentOperation operation = ExperimentOperation.newBuilder() .setCreate( Experiment.newBuilder() // Name must be unique. .setName("Example Experiment #" + getPrintableDateTime()) .setType(ExperimentType.SEARCH_CUSTOM) .setSuffix("[experiment]") .setStatus(ExperimentStatus.SETUP) .build()) .build(); try (ExperimentServiceClient experimentServiceClient = googleAdsClient.getLatestVersion().createExperimentServiceClient()) { MutateExperimentsResponse response = experimentServiceClient.mutateExperiments( Long.toString(customerId), ImmutableList.of(operation)); String experiment = response.getResults(0).getResourceName(); System.out.printf("Created experiment with resource name '%s'%n", experiment); return experiment; } }
C#
/// <summary> /// Creates the experiment. /// </summary> /// <param name="client">The Google Ads client.</param> /// <param name="customerId">The customer ID for which the call is made.</param> /// <returns>The resource name of the newly created experiment.</returns> private static string CreateAnExperiment(GoogleAdsClient client, long customerId) { // Get the ExperimentService. ExperimentServiceClient experimentService = client.GetService( Services.V17.ExperimentService); // Creates the experiment. Experiment experiment = new Experiment() { // Name must be unique. Name = $"Example Experiment #{ExampleUtilities.GetRandomString()}", Type = ExperimentType.SearchCustom, Suffix = "[experiment]", Status = ExperimentStatus.Setup }; // Creates the operation. ExperimentOperation operation = new ExperimentOperation() { Create = experiment }; // Makes the API call. MutateExperimentsResponse response = experimentService.MutateExperiments( customerId.ToString(), new[] { operation }); // Displays the result. string experimentResourceName = response.Results.First().ResourceName; Console.WriteLine($"Created experiment with resource name " + $"'{experimentResourceName}'."); return experimentResourceName; }
PHP
private static function createExperimentResource( ExperimentServiceClient $experimentServiceClient, int $customerId ): string { // Creates an experiment and its operation. $experiment = new Experiment([ // Name must be unique. 'name' => 'Example Experiment #' . Helper::getPrintableDatetime(), 'type' => ExperimentType::SEARCH_CUSTOM, 'suffix' => '[experiment]', 'status' => ExperimentStatus::SETUP ]); $experimentOperation = new ExperimentOperation(['create' => $experiment]); // Issues a request to create the experiment. $response = $experimentServiceClient->mutateExperiments( MutateExperimentsRequest::build($customerId, [$experimentOperation]) ); $experimentResourceName = $response->getResults()[0]->getResourceName(); print "Created experiment with resource name '$experimentResourceName'" . PHP_EOL; return $experimentResourceName; }
Python
def create_experiment_resource(client, customer_id): """Creates a new experiment resource. Args: client: an initialized GoogleAdsClient instance. customer_id: a client customer ID. Returns: the resource name for the new experiment. """ experiment_operation = client.get_type("ExperimentOperation") experiment = experiment_operation.create experiment.name = f"Example Experiment #{uuid.uuid4()}" experiment.type_ = client.enums.ExperimentTypeEnum.SEARCH_CUSTOM experiment.suffix = "[experiment]" experiment.status = client.enums.ExperimentStatusEnum.SETUP experiment_service = client.get_service("ExperimentService") response = experiment_service.mutate_experiments( customer_id=customer_id, operations=[experiment_operation] ) experiment_resource_name = response.results[0].resource_name print(f"Created experiment with resource name {experiment_resource_name}") return experiment_resource_name
Ruby
def create_experiment_resource(client, customer_id) operation = client.operation.create_resource.experiment do |e| # Name must be unique. e.name = "Example Experiment #{(Time.new.to_f * 1000).to_i}" e.type = :SEARCH_CUSTOM e.suffix = '[experiment]' e.status = :SETUP end response = client.service.experiment.mutate_experiments( customer_id: customer_id, operations: [operation], ) experiment = response.results.first.resource_name puts "Created experiment with resource name #{experiment}." experiment end
Perl
sub create_experiment_resource { my ($api_client, $customer_id) = @_; my $experiment = Google::Ads::GoogleAds::V17::Resources::Experiment->new({ # Name must be unique. name => "Example Experiment #" . uniqid(), type => SEARCH_CUSTOM, suffix => "[experiment]", status => SETUP }); my $operation = Google::Ads::GoogleAds::V17::Services::ExperimentService::ExperimentOperation ->new({ create => $experiment }); my $response = $api_client->ExperimentService()->mutate({ customerId => $customer_id, operations => [$operation]}); my $resource_name = $response->{results}[0]{resourceName}; printf "Created experiment with resource name '%s'.\n", $resource_name; return $resource_name; }