Condividi tramite


Creare ed eseguire il primo esperimento

Nella seguente procedura dettagliata, farai:

  • Creare un progetto di sperimentazione nel Centro per i partner che definisce diverse variabili remote che rappresentano il testo e il colore di un pulsante dell'app.
  • Creare un'app con codice che recupera i valori delle variabili remote, usa questi dati per modificare il colore di sfondo di un pulsante e registra i dati degli eventi di visualizzazione e conversione nel Centro per i partner.
  • Creare un esperimento nel progetto per verificare se la modifica del colore di sfondo del pulsante dell'app aumenta correttamente il numero di clic del pulsante.
  • Eseguire l'app per raccogliere i dati dell'esperimento.
  • Esaminare i risultati dell'esperimento nel Centro per i partner, scegliere una variante da abilitare per tutti gli utenti dell'app e completare l'esperimento.

Per una panoramica dei test A/B con Partner Center, vedere Esegui esperimenti di app con test A/B.

Prerequisiti

Per seguire questa procedura dettagliata, è necessario avere un account del Centro per i partner ed è necessario configurare il computer di sviluppo come descritto in Eseguire esperimenti di app con test A/B.

Creare un progetto con variabili remote nel Centro per i partner

  1. Accedi a Centro per i partner.
  2. Se hai già un'app nel Centro per i partner che vuoi usare per creare un esperimento, seleziona l'app nel Centro per i partner. Se non si ha ancora un'app nel Centro per i partner, creare una nuova app riservando un nome e quindi selezionare l'app nel Centro per i partner.
  3. Nel riquadro di navigazione, fare clic su Services e poi su Experimentation.
  4. Nella sezione Progetti della pagina successiva, clicca sul pulsante Nuovo progetto.
  5. Nella pagina Nuovo progetto, immettere il nome Esperimenti sul Clic del Pulsante per il nuovo progetto.
  6. Espandi la sezione variabili remote e clicca su Aggiungi variabile quattro volte. A questo punto dovrebbero essere presenti quattro righe variabili vuote.
  • Nella prima riga digitare buttonText per il nome della variabile e digitare Pulsante Grigio nella colonna valore predefinito.
  • Nella seconda riga digitare r per il nome della variabile e digitare 128 nella colonna valore predefinito.
  • Nella terza riga digitare g per il nome della variabile e digitare 128 nella colonna valore predefinito.
  • Nella quarta riga digitare b per il nome della variabile e digitare 128 nella colonna valore predefinito.
  1. Fare clic su Salva e prendere nota del valore ID del progetto visualizzato nella sezione integrazione SDK. Nella sezione successiva si aggiornerà il codice dell'app e si farà riferimento a questo valore nel codice.

Scrivere il codice dell'esperimento nell'app

  1. In Visual Studio creare un nuovo progetto della piattaforma UWP (Universal Windows Platform) usando Visual C#. Denominare il progetto SampleExperiment.

  2. In Esplora soluzioni, espandi il nodo del progetto, fai clic con il pulsante destro del mouse su Riferimentie scegli Aggiungi riferimento.

  3. In Gestione riferimenti, espandere Windows universale e fare clic su Estensioni.

  4. Nell'elenco degli SDK selezionare la casella di controllo accanto a Microsoft Engagement Framework e fare clic su OK.

  5. In Esplora soluzioni, fare doppio clic su MainPage.xaml per aprire l'editor di progettazione per la pagina principale nell'applicazione.

  6. Trascinare un pulsante da casella degli strumenti di alla pagina.

  7. Fare doppio clic sul pulsante nella finestra di progettazione per aprire il file di codice e aggiungere un gestore eventi per l'evento Click.

  8. Sostituire l'intero contenuto del file di codice con il codice seguente. Assegna la variabile projectId al valore dell'ID progetto che hai ottenuto da Partner Center nella sezione precedente.

    using System;
    using Windows.UI.Xaml;
    using Windows.UI.Xaml.Controls;
    using Windows.UI.Xaml.Media;
    using System.Threading.Tasks;
    using Windows.UI;
    using Windows.UI.Core;
    
    // Namespace for A/B testing.
    using Microsoft.Services.Store.Engagement;
    
    namespace SampleExperiment
    {
        public sealed partial class MainPage : Page
        {
            private StoreServicesExperimentVariation variation;
            private StoreServicesCustomEventLogger logger;
    
            // Assign this variable to the project ID for your experiment from Dev Center.
            private string projectId = "";
    
            public MainPage()
            {
                this.InitializeComponent();
    
                // Because this call is not awaited, execution of the current method
                // continues before the call is completed.
    #pragma warning disable CS4014
                InitializeExperiment();
    #pragma warning restore CS4014
            }
    
            private async Task InitializeExperiment()
            {
                // Get the current cached variation assignment for the experiment.
                var result = await StoreServicesExperimentVariation.GetCachedVariationAsync(projectId);
                variation = result.ExperimentVariation;
    
                // Check whether the cached variation assignment needs to be refreshed.
                // If so, then refresh it.
                if (result.ErrorCode != StoreServicesEngagementErrorCode.None || result.ExperimentVariation.IsStale)
                {
                    result = await StoreServicesExperimentVariation.GetRefreshedVariationAsync(projectId);
    
                    // If the call succeeds, use the new result. Otherwise, use the cached value.
                    if (result.ErrorCode == StoreServicesEngagementErrorCode.None)
                    {
                        variation = result.ExperimentVariation;
                    }
                }
    
                // Get remote variables named "buttonText", "r", "g", and "b" from the variation
                // assignment. If no variation assignment is available, the variables default
                // to "Grey button" for the button text and grey RGB value for the button color.
                var buttonText = variation.GetString("buttonText", "Grey Button");
                var r = (byte)variation.GetInt32("r", 128);
                var g = (byte)variation.GetInt32("g", 128);
                var b = (byte)variation.GetInt32("b", 128);
    
                // Assign button text and color.
                await button.Dispatcher.RunAsync(
                    CoreDispatcherPriority.Normal,
                    () =>
                    {
                        button.Background = new SolidColorBrush(Color.FromArgb(255, r, g, b));
                        button.Content = buttonText;
                        button.Visibility = Visibility.Visible;
                    });
    
                // Log the view event named "userViewedButton" to Dev Center.
                if (logger == null)
                {
                    logger = StoreServicesCustomEventLogger.GetDefault();
                }
    
                logger.LogForVariation(variation, "userViewedButton");
            }
    
            private void button_Click(object sender, RoutedEventArgs e)
            {
                // Log the conversion event named "userClickedButton" to Dev Center.
                if (logger == null)
                {
                    logger = StoreServicesCustomEventLogger.GetDefault();
                }
    
                logger.LogForVariation(variation, "userClickedButton");
            }
        }
    }
    
  9. Salvare il file di codice e compilare il progetto.

Creare l'esperimento nel Centro per i partner

  1. Torna alla pagina del progetto Esperimenti con il clic del pulsante nel Centro per i partner.
  2. Nella sezione Esperimenti, fare clic sul pulsante Nuovo esperimento.
  3. Nella sezione dettagli esperimento, digitare il nome "Optimize Button Clicks" nel campo nome esperimento.
  4. Nella sezione View event, digitare userViewedButton nel campo View event name. Si noti che questo nome corrisponde alla stringa dell'evento di visualizzazione registrata nel codice aggiunto nella sezione precedente.
  5. Nella sezione Obiettivi ed eventi di conversione immettere i valori seguenti:
  • Nel campo Nome obiettivo, digitare Aumenta i clic sul pulsante.
  • Nel campo nome evento di conversione digitare il nome userClickedButton. Si noti che questo nome corrisponde alla stringa dell'evento di conversione registrata nel codice aggiunto nella sezione precedente.
  • Nel campo obiettivo scegliere Massimizzare.
  1. Nella sezione Variabili remote e varianti verificare che la casella di controllo Distribuisci equamente sia selezionata in modo che le varianti vengano distribuite equamente all'app.
  2. Aggiungere variabili all'esperimento:
    1. Fare clic sul controllo a discesa, scegliere pulsanteTexte fare clic su Aggiungi variabile. La stringa pulsante grigio dovrebbe essere visualizzata automaticamente nella colonna Variante A (questo valore è derivato dalle impostazioni del progetto). Nella colonna variante B digitare pulsante blu.
    2. Fare di nuovo clic sul controllo a discesa, scegliere re fare clic su Aggiungi variabile. La stringa 128 dovrebbe essere visualizzata automaticamente nella colonna Variante A. Nella colonna variante B digitare 1.
    3. Fare di nuovo clic sul controllo a discesa, scegliere ge fare clic su Aggiungi variabile. La stringa 128 dovrebbe essere visualizzata automaticamente nella colonna Variante A. Nella colonna variante B digitare 1.
    4. Fare di nuovo clic sul controllo a discesa, scegliere be fare clic su Aggiungi variabile. La stringa 128 dovrebbe essere visualizzata automaticamente nella colonna Variante A. Nella colonna variante B digitare 255.
  3. Fare clic su Salva e quindi su Attiva.

Importante

Dopo aver attivato un esperimento, non è più possibile modificare i parametri dell'esperimento a meno che non sia stato fatto clic sulla casella di controllo esperimento modificabile al momento della creazione dell'esperimento. In genere, ti consigliamo di scrivere il codice dell'esperimento nella tua app prima di attivare l'esperimento.

Eseguire l'app per raccogliere i dati dell'esperimento

  1. Eseguire l'app SampleExperiment creata in precedenza.
  2. Verificare che venga visualizzato un pulsante grigio o blu. Fare clic sul pulsante e quindi chiudere l'app.
  3. Ripetere i passaggi precedenti più volte nello stesso computer per verificare che l'app mostri lo stesso colore del pulsante.

Esaminare i risultati e completare l'esperimento

Attendere almeno diverse ore dopo aver completato la sezione precedente e seguire questa procedura per esaminare i risultati dell'esperimento e completare l'esperimento.

Nota

Non appena si attiva un esperimento, il Centro per i partner inizia immediatamente a raccogliere dati da tutte le app instrumentate per registrare i dati per l'esperimento. Tuttavia, la visualizzazione dei dati dell'esperimento nel Centro per i partner può richiedere diverse ore.

  1. Nel Centro per i partner, tornare alla pagina Esperimentazione per l'app.

  2. Nella sezione Esperimenti attivi, fare clic su Ottimizzare i clic sui pulsanti per accedere alla pagina di questo esperimento.

  3. Verificare che i risultati visualizzati nelle sezioni riepilogo risultati e dettagli risultati corrispondano a quanto previsto. Per altri dettagli su queste sezioni, vedere Gestire l'esperimento nel Centro per i partner.

    Nota

    Il Centro per i partner segnala solo il primo evento di conversione per ogni utente in un periodo di tempo di 24 ore. Se un utente attiva più eventi di conversione nell'app entro un periodo di 24 ore, viene segnalato solo il primo evento di conversione. Ciò consente di impedire a un singolo utente con molti eventi di conversione di inclinare i risultati dell'esperimento per un gruppo di utenti di esempio.

  4. A questo punto è possibile terminare l'esperimento. Nella sezione Riepilogo risultati, nella colonna Variante B fare clic su Switch. Questo cambia tutti gli utenti dell'app al pulsante blu.

  5. Fare clic su OK per confermare che si vuole terminare l'esperimento.

  6. Esegui l'app SampleExperiment creata nella sezione precedente.

  7. Verificare che venga visualizzato un pulsante blu. Tieni presente che potrebbero essere necessari fino a due minuti prima che l'app riceva un'assegnazione di variante aggiornata.