在预览模式下运行脚本

预览模式允许你测试脚本,而无需实际更改数据。 相反,将显示结果,就像脚本已执行一样。 这可以减少设置测试用例所花费的时间。 如果对脚本的输出感到满意,可以运行脚本或计划稍后运行。

若要以编程方式确定脚本是否在预览模式下执行,请参阅 isPreviewExecutionInfo 方法。

由于对象未在预览模式下创建、删除或修改,因此并非所有代码都将执行与实时运行相同的操作。 以下代码演示了一个简单的示例,当代码在预览模式与实时模式下的行为不同时。

/function main() {

    // Get an ad group that does not have keywords.
    var adGroup = AdsApp.adGroups()
        .withIds(["123456789"])
        .get()
        .next();

    // Add a keyword to the ad group
    var operation = adGroup.newKeywordBuilder()
        .withText('mykeyword')
        .build();

    // In preview mode, the keyword is not created, so getId() returns -1.
    if (operation.isSuccessful()) {
        var keyword = operation.getResult();
        Logger.log(`added keyword, ${keyword.getText()} (${keyword.getId()})`);
    }
    else {
        for (var error in operation.getErrors()) {
            Logger.log(`Error adding keyword, ${error}.`);
        }
    }

    // Get the ad group's keywords. In preview mode, the
    // keyword is not created, so no keywords are logged.
    var keywords = AdsApp.keywords()
        .withCondition(`AdGroupName CONTAINS '${adGroup.getName()}'`)
        .get();

    while (keywords.hasNext()) {
        var keyword = keywords.next();
        Logger.log(`added keyword, ${keyword.getText()} (${keyword.getId()})`);
    }
}

后续步骤