Criar e executar seu primeiro experimento

Neste passo a passo, você vai:

  • Crie um projeto de experimentação no Partner Center que define várias variáveis remotas que representam o texto e a cor de um botão de aplicativo.
  • Crie um aplicativo com código que recupere os valores de variável remota, use esses dados para alterar a cor da tela de fundo de um botão e os dados de eventos de exibição e conversão de logs de volta para o Partner Center.
  • Criará um experimento no projeto para testar se a mudança na cor de fundo de um botão de aplicativo aumenta com êxito o número de cliques do botão.
  • Executará o aplicativo para coletar dados de experimento.
  • Examine os resultados do experimento no Partner Center, escolha uma variação para habilitar para todos os usuários do aplicativo e conclua o experimento.

Para obter uma visão geral dos testes A/B com o Partner Center, consulte Executar experimentos de aplicativo com testes A/B.

Pré-requisitos

Para seguir este passo a passo, você deve ter uma conta do Partner Center e configurar seu computador de desenvolvimento, conforme descrito em Executar experimentos de aplicativo com testes A/B.

Criar um projeto com variáveis remotas no Partner Center

  1. Entre no Partner Center.
  2. Se você já tiver um aplicativo no Partner Center que deseja usar para criar um experimento, selecione esse aplicativo no Partner Center. Se você ainda não tiver um aplicativo no Partner Center, crie um novo aplicativo reservando um nome e, em seguida, selecione esse aplicativo no Partner Center.
  3. No painel de navegação, clique em Serviços e depois em Experimentação.
  4. Na seção Projetos da próxima página, clique no botão Novo projeto.
  5. Na página Novo projeto, insira o nome Experimentos de clique de botão para seu novo projeto.
  6. Expanda a seção Variáveis remotas e clique em Adicionar variável quatro vezes. Agora, você terá quatro linhas de variáveis em branco.
  • Na primeira linha, digite buttonText para o tipo e o nome de variável Botão cinza na coluna Valor padrão.
  • Na segunda linha, digite r para o tipo e o nome de variável 128 na coluna Valor padrão.
  • Na terceira linha, digite g para o tipo e o nome de variável 128 na coluna Valor padrão.
  • Na quarta linha, digite b para o tipo e o nome de variável 128 na coluna Valor padrão.
  1. Clique em Salvar e anote o valor da ID do projeto que consta na seção integração do SDK. Na próxima seção, você atualizará o código do aplicativo e fará referência a esse valor em seu código.

Codificar o experimento no seu aplicativo

  1. No Visual Studio, crie um novo projeto da Plataforma Universal do Windows usando o Visual C#. Especifique o nome SampleExperiment para o projeto.

  2. No Gerenciador de Soluções, expanda o nó do seu projeto, clique com botão direito no nó Referências e clique em Adicionar Referência.

  3. No Gerenciador de Referências, expanda Universal do Windows e clique em Extensões.

  4. Na lista de SDKs, marque a caixa de seleção ao lado de Microsoft Engagement Framework e clique em OK.

  5. No Gerenciador de Soluções, clique duas vezes em MainPage.xaml para abrir o designer da página principal no aplicativo.

  6. Arraste um elemento Button de Toolbox até a página.

  7. Clique duas vezes no botão do designer para abrir o arquivo de código e adicionar um manipulador de eventos para o evento Click.

  8. Substitua o conteúdo inteiro do arquivo de código pelo código a seguir. Atribua a projectId variável ao valor da ID do projeto obtido do Partner Center na seção anterior.

    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. Salve o arquivo de código e compile o projeto.

Criar o experimento no Partner Center

  1. Retorne à página do projeto Botão Clique em Experimentos no Partner Center.
  2. Na seção Experimentos, clique no botão Novo experimento.
  3. Na seção Detalhes do experimento, digite o nome Otimizar cliques de botão no campo Nome do experimento.
  4. Na seção Evento de visualização, digite userViewedButton no campo Nome do evento de visualização. Observe que esse nome corresponde à cadeia de caracteres de evento de visualização ao qual você conectou o código que você adicionou na seção anterior.
  5. Na seção Metas e eventos de conversão, insira os seguintes valores:
  • No campo Nome da meta, digite Aumentar Cliques de Botão.
  • No campo Nome do evento de conversão, digite o nome userClickedButton. Observe que esse nome corresponde à cadeia de caracteres de evento de conversão ao qual você conectou o código que você adicionou na seção anterior.
  • No campo Objetivo, escolha Maximizar.
  1. Na seção Variações e variáveis remotas, confirme se a caixa de seleção Distribuir igualmente está marcada para que as variações sejam distribuídas igualmente ao seu aplicativo.
  2. Adicione variáveis ao seu experimento:
    1. Clique no controle de lista suspensa, escolha buttonTexte clique em Adicionar variável. A cadeia de caracteres Botão cinza deve ser exibida automaticamente na coluna Variação A (esse valor é derivado das configurações do projeto). Na coluna Variação B, digite Botão azul.
    2. Clique novamente no controle de lista suspensa, escolha re clique em Adicionar variável. A cadeia de caracteres 128 deve aparecer automaticamente na coluna Variação A. Na coluna Variação B, digite 1.
    3. Clique novamente no controle de lista suspensa, escolha ge clique em Adicionar variável. A cadeia de caracteres 128 deve aparecer automaticamente na coluna Variação A. Na coluna Variação B, digite 1.
    4. Clique novamente no controle de lista suspensa, escolha be clique em Adicionar variável. A cadeia de caracteres 128 deve aparecer automaticamente na coluna Variação A. Na coluna Variação B, digite 255.
  3. Clique em Salvar e depois em Ativar.

Importante

Depois de ativar um experimento, você não pode mais modificar os parâmetros dele, a menos que tenha clicado na caixa de seleção Experimento editável quando criou o experimento. Em geral, recomendamos codificar o experimento no seu app antes de ativar esse experimento.

Execute o aplicativo para coletar dados de experimento

  1. Execute o aplicativo SampleExperiment criado anteriormente.
  2. Confirme que você está vendo um botão cinza ou azul. Clique no botão e, em seguida, feche o aplicativo.
  3. Repita as etapas acima várias vezes no mesmo computador para confirmar que o aplicativo está mostrando a mesma cor de botão.

Examine os resultados e conclua o experimento

Aguarde várias horas depois de concluir a seção anterior e, em seguida, siga estas etapas para analisar os resultados do seu experimento e concluir o processo.

Observação

Assim que você ativa um experimento, o Partner Center inicia imediatamente a coleta de dados de todos os aplicativos instrumentados para registrar dados para seu experimento. No entanto, pode levar várias horas para que os dados do experimento apareçam no Partner Center.

  1. No Partner Center, retorne à página Experimentação do aplicativo.

  2. Na seção Experimentos ativos, clique em Otimizar cliques de botão para acessar a página desse experimento.

  3. Confirme que os resultados mostrados nas seções Resumo dos resultados e Detalhes dos resultados correspondem ao que você espera ver. Para obter mais detalhes sobre essas seções, consulte Gerenciar seu experimento no Partner Center.

    Observação

    O Partner Center relata apenas o primeiro evento de conversão para cada usuário em um período de 24 horas. Se um usuário aciona vários eventos de conversão em seu aplicativo em um período de 24 horas, apenas o primeiro evento de conversão é relatado. Isso se destina a ajudar a impedir que um usuário único com muitos eventos de conversão distorça os resultados do experimento de um grupo de amostra de usuários.

  4. Agora, você está pronto para finalizar o experimento. Na seção Resumo dos resultados, na coluna Variação B, clique em Alternar. Isso alterna todos os usuários do seu aplicativo para o botão azul.

  5. Clique em OK para confirmar que você deseja finalizar o experimento.

  6. Execute o aplicativo SampleExperiment criado na seção anterior.

  7. Confirme que você está vendo um botão azul. Observe que pode levar até dois minutos para que o seu aplicativo receba uma atribuição de variação atualizada.