Casos de Uso

Testes de CAPTCHA para filas e checkout de plataformas de ingressos em staging

Este guia se limita a ambientes próprios, QA, staging ou pré-produção com autorização explícita. Os exemplos usam páginas internas, dados fictícios e endpoints de validação controlados pela equipe. Não há orientação para automatizar serviços de terceiros, compras reais, filas públicas ou controles de acesso fora do seu ambiente.

Escopo seguro

Use apenas plataforma própria em staging, com evento fictício, assentos de teste, ingressos fictícios e pagamento simulado. Não automatize filas públicas, seleção real de assentos ou compras reais.

Modelo de fila interna para QA

Crie https://staging.example.com/ticketing/queue-test para simular posição, liberação e expiração de sessão. O runner QA deve validar estado da fila sem entrar em venda pública.

Eventos, assentos e pagamentos fictícios

Use https://staging.example.com/ticketing/fake-event, mapas de assentos artificiais e token de pagamento sandbox. Cada reserva deve expirar automaticamente e nunca emitir ingresso válido.

Enviar tarefa CaptchaAI a partir de staging

A tarefa deve partir do ambiente de teste e usar a URL https://staging.example.com/ticketing/checkout-test.

import os, time, requests

API_KEY = os.environ['CAPTCHAAI_API_KEY']
SITEKEY = os.environ['QA_CAPTCHA_SITEKEY']

def criar_tarefa_captcha(pageurl):
    resposta = requests.post('https://ocr.captchaai.com/in.php', data={
        'key': API_KEY,
        'method': 'userrecaptcha',
        'googlekey': SITEKEY,
        'pageurl': pageurl,
        'json': 1,
    }).json()
    return resposta['request']

def aguardar_resultado(task_id):
    while True:
        time.sleep(5)
        resposta = requests.get('https://ocr.captchaai.com/res.php', params={
            'key': API_KEY,
            'action': 'get',
            'id': task_id,
            'json': 1,
        }).json()
        if resposta.get('status') == 1:
            return resposta['request']

task_id = criar_tarefa_captcha('https://staging.example.com/ticketing/checkout-test')
token_qa = aguardar_resultado(task_id)
print({'token_recebido': bool(token_qa)})

Validar resultado no backend QA

O backend recebe o token, valida o CAPTCHA, confirma o assento fictício e devolve um status pass/fail para a suíte QA.

Logging e decisões pass/fail

Registre posição simulada, caso QA, tempo de resolução, resultado do backend, motivo de falha e correlação com o trace do checkout.

Solução de problemas

Se a fila expirar, aumente o TTL de staging. Se a sitekey divergir, sincronize configuração de QA. Se o backend rejeitar o token, verifique domínio e action.

Critérios de publicação

Antes de publicar a mudança testada, confirme que a documentação aponta para ambiente próprio, que os exemplos usam dados fictícios, que nenhum endpoint de produção é acionado pelo teste e que os logs contêm correlação suficiente para auditoria. A página staging deve ter domínio autorizado, sitekey esperada, configuração de backend separada e política clara de expiração. Quando o resultado variar, trate os números como amostra interna: repita a medição, anote a janela de execução e compare apenas cenários equivalentes.

Guias relacionados seguros

Valide a integração CAPTCHA do seu ambiente próprio com a CaptchaAI.

Os comentários estão desativados para este artigo.