simulateConcurrentUsage

Executa diferentes operações simultâneas em um ambiente simulando usuários.

Esse comando pode ser usado para validar o desempenho do ambiente a fim de verificar se o tempo de resposta é aceitável quando o serviço está sob carga durante operações específicas executadas por um número específico de usuários. Por exemplo, esse comando pode ser usado para medir o desempenho quando 50 usuários abrirem simultaneamente um formulário usando diferentes PDVs. Ele permite o teste de carga dos ambientes por autoatendimento

Esse comando faz a simulação executando as operações especificadas para um determinado número de usuários e iterações. Ele executa múltiplas iterações para calcular o tempo mínimo, o tempo máximo e o tempo médio de uma operação específica. As seguintes operações são aceitas para a realização do teste de carga de uso atual:

  • Abrir formulários
  • Salvar formulários
  • Executar regras de negócios
  • Executar regras de dados
  • Abrir grades ad hoc
  • Executar Relatórios
  • Executar Livros

Note:

Esse comando não oferece suporte aos relatórios e livros do Financial Reporting; somente os livros e relatórios que pertencem ao Reports (antigo Management Reports) são permitidos.

Esse comando aceita como entrada um arquivo ZIP, que já deve ter sido carregado na caixa de entrada do ambiente. O arquivo ZIP contém um arquivo requirement.csv e o arquivo de entrada que oferece suporte aos casos de uso incluídos em requirement.csv. O comando simula os casos de uso e cria um relatório que pode ser enviado por e-mail para um ou mais destinatários.

Cenário de Uso 1: Teste de aceitação de desempenho do aplicativo para 50 usuários abrindo simultaneamente um formulário.

Solução:

  1. Crie requirement.csv com entradas semelhantes às seguintes, supondo que você queira abrir um formulário chamado Exchange Rates armazenado na pasta Library/Global Assumption/:
    # Type of Operation,Artifact Name,Number of Users,Input File,Additional Info
    Open Form, Library/Global Assumption/Exchange Rates,50,open_form_input.csv,
  2. Crie open_form_input.csv usando o formato especificado em Abrir Arquivo de Entrada do Formulário. Você terá uma entrada nesse arquivo, que será usada 50 vezes. Se quiser abrir o mesmo formulário com PDVs diferentes, você terá tantas entradas quanto o número de PDVs que deseja usar.
  3. Crie userVarMemberMapping.csv usando o formato especificado em Criação do Arquivo UserVarMemberMapping.csv.
  4. Crie um arquivo ZIP contendo os arquivos das etapas anteriores e faça upload dele na caixa de entrada.
  5. Execute o comando simulateConcurrentUsage usando o arquivo ZIP da etapa anterior como o arquivo de entrada.

Cenário de Uso 2: Simulação de desempenho para aumento de uso sazonal, por exemplo, no final do exercício financeiro. Pressuposto: 100 usuários salvam um formulário com um atraso de seis segundos entre cada usuário.

Solução:

  1. Crie requirement.csv com entradas semelhantes às seguintes, supondo que você deseja salvar um formulário chamado Accessories Revenue armazenado na pasta Library/Dashboards/:
    # Type of Operation,Artifact Name,Number of Users,Input File,Additional Info
    Save Form, Library/Dashboards/Accessories Revenue,100,save_form_input.csv,
  2. Crie save_form_input.csv usando o formato especificado em Salvar Arquivo de Entrada do Formulário.
  3. Crie userVarMemberMapping.csv usando o formato especificado em Criação do Arquivo UserVarMemberMapping.csv.
  4. Crie um arquivo ZIP contendo os arquivos das etapas anteriores e faça upload dele na caixa de entrada.
  5. Execute o comando simulateConcurrentUsage usando o arquivo ZIP da etapa anterior como o arquivo de entrada, bem como estes valores de propriedade: iteration=1 e lagTime=6.

Aplica-se a

Planning, Planning Modules, FreeForm, Financial Consolidation and Close, Tax Reporting, Strategic Workforce Planning, e Sales Planning.

Funções Necessárias

Administrador de Serviço. Você também precisa da função de Administrador do Domínio de Identidades para usar testModes 0, 1 e 2.

Uso

epmautomate simulateConcurrentUsage INPUT_FILE.zip [iterations=COUNT] [notificationEmails="EMAIL_ADDRESS"] [testMode=0|1|2|3] [lagTime=LAG_TIME], em que:

  • INPUT_FILE.zip é o nome de um arquivo ZIP que identifica seus casos de uso. Use o comando uploadFile (exemplo de sintaxe de comando epmautomate uploadFile "C:/uploads/INPUT_FILE.zip" inbox) para fazer upload desse arquivo na caixa de entrada antes de executar esse comando. Esse arquivo ZIP deve conter estes arquivos:
  • iterations é um número positivo que indica o número de vezes que cada caso de uso identificado em requirement.csv deve ser executado para medir o tempo de resposta. Se não for especificado, a operação será executada apenas uma vez.
  • notificationEmails, opcionalmente, indica os endereços de e-mail para os quais os resultados desses comandos serão enviados por e-mail. Se especificar mais de um endereço de e-mail, use ponto-e-vírgula para separá-los. Coloque também a lista de endereços entre aspas duplas. Se não for especificado, os resultados serão enviados ao usuário que iniciou o comando. Para obter informações detalhadas sobre esse relatório, consulteAmostra de Relatório de Simulação de Uso Simultâneo.
  • [testMode], opcionalmente, especifica o modo de simulação de uso simultâneo. O padrão é 0.

    Em seguida, execute o comando com o modo 3 para executar a simulação quantas vezes forem necessárias. Ao final, execute o comando com o modo 2 para excluir os usuários simulados.

    Os valores aceitáveis são:
    • 0: O modo de simulação padrão, que adiciona usuários simulados ao ambiente e atribui a eles a função de Administrador de Serviço, executa a simulação e, em seguida, exclui os usuários simulados. Esse modo será útil se você desejar executar o teste apenas uma vez.

      Os usuários simulados possuem estas propriedades:

      Nome: testuser1, testuser2 e assim por diante

      Sobrenome: testuser1, testuser2 e assim por diante.

      Endereço de E-mail: testuser1@discard.oracle.com, testuser2@discard.oracle.com e assim por diante

      Nome de Usuário: testuser1, testuser2 e assim por diante

    • 1: Adiciona usuários simulados ao ambiente e atribui a eles a função de Administrador de Serviço. Não executa a simulação nem exclui os usuários simulados.
    • 2: Exclui os usuários simulados. Não cria usuários nem executa a simulação.
    • 3: Executa a simulação usando usuários simulados já existentes sem adicionar ou excluir usuários.

    Se desejar executar o uso simultâneo apenas uma vez, use testMode=0. Para executar uma série de testes:

    • Primeiro, execute o comando usando testMode=1 para adicionar os usuários simulados e atribuir a eles a função deAdministrador de Serviço.
    • Em seguida, execute o comando usando testMode=3 para executar a simulação quantas vezes forem necessárias.
    • Por fim, execute o comando usando testMode=2 para excluir os usuários simulados.
  • [lagTime], opcionalmente, especifica o número de segundos (5 segundos ou mais) que o comando deve esperar entre a execução de cada caso de uso em requirement.csv. O padrão é 5 segundos. Não use números negativos (por exemplo -1), frações (por exemplo, 1/2) e valores decimais.

    Após iniciar a execução de um caso de uso em requirement.csv para um usuário, o comando aguarda o número de segundos especificado por esse parâmetro para iniciar a execução do caso de uso para o próximo usuário. Como as atividades do usuário não costumam ser iniciadas ao mesmo tempo, a definição desse parâmetro ajuda a criar uma simulação mais realista de uma carga em um ambiente de trabalho.

Exemplo

epmAutomate simulateConcurrentUsage test_simulation.zip iterations=5 notificationEmails="jane.doe@example.com;john.doe@example.com;example@example.com" lagTime=6