TIRApiClient

Cliente de testes integrados TIR (TOTVS Integrated Robot). Permite escrever testes automatizados que conectam no AppServer e validam comportamento.

Assinatura: TIRApiClient():new(cBaseUrl) -> oCliente

Retorna: object

TIR (TOTVS Integrated Robot) e o framework oficial de testes integrados do Protheus. TIRApiClient e o componente que executa cenarios de teste contra um AppServer real, simulando inputs e validando outputs.

Sintaxe basica

#include 'tlpp-core.th'

namespace empresa.testes

function TestaInclusaoCliente()
    local oTir   as object
    local lOk    as logical

    oTir := TIRApiClient():new('http://localhost:8080')
    oTir:setCredentials('admin', 'senha')

    oTir:openModule('SIGAFAT')
    oTir:openRotina('MATA030')
    oTir:clickIncluir()

    oTir:setField('A1_COD',  'TST001')
    oTir:setField('A1_NOME', 'Cliente Teste')
    oTir:setField('A1_CGC',  '00000000000191')

    oTir:clickConfirmar()

    lOk := oTir:assertSuccess()
    if !lOk
        FwLogger():getLogger():error('Falha: ' + oTir:getLastError())
    endif

    oTir:disconnect()
return lOk

Modos de uso

Casos de teste comuns

// 1. Validar regra de negocio
function TesteValidacaoCGC()
    local oTir := TIRApiClient():new(URL)
    oTir:setField('A1_CGC', '11111111111111')  // CGC invalido
    oTir:clickConfirmar()
    return oTir:assertError('CGC invalido')
endfunction

// 2. Integracao com tabela
function TesteInclusaoCriaSE1()
    local oTir := TIRApiClient():new(URL)
    oTir:openRotina('MATA460')  // faturamento
    oTir:fechaPedido('123456')

    // Valida que SE1 foi criada
    local nQtd := oTir:sqlQuery('SELECT COUNT(*) FROM SE1010 WHERE E1_NUM=\'001234\'')
    return nQtd > 0
endfunction

Pegadinhas

Parâmetros

NomeTipoObrigatórioDescrição
cBaseUrlCharactersimURL do AppServer pra testar

Exemplos

Teste de cadastro

oTir := TIRApiClient():new(URL)
oTir:setField('A1_COD', cTeste)
oTir:clickConfirmar()

Veja também