Skip to main content

Biblioteca JTech Robot Framework AI

Uma biblioteca Robot Framework que fornece keywords com recursos de IA para automação de testes usando o Google Generative AI (Gemini Pro).

Funcionalidades

  • Integração com o Google Generative AI (Gemini Pro)
  • Suporte para operações síncronas e assíncronas
  • Gerenciamento de histórico de chat
  • Tratamento robusto de erros e tentativas
  • Integração com LangChain para operações avançadas de IA

Instalação

  1. Clone este repositório:
git clone https://gitlab.com/veolia.com/brasil/jtech/framework-jtech/jtech-robotframework-ai.git
cd jtech-robotframework-ai
  1. Configure o ambiente de desenvolvimento usando o Makefile:
make setup

Este comando irá:

  • Criar um ambiente virtual Python
  • Instalar todas as dependências necessárias
  • Instalar o pacote em modo de desenvolvimento

Desenvolvimento

O projeto inclui um Makefile com vários comandos úteis para desenvolvimento:

# Ver todos os comandos disponíveis
make help

# Configurar ambiente de desenvolvimento
make setup

# Executar testes
make test

# Verificar estilo do código
make lint

# Formatar código
make format

# Limpar arquivos temporários
make clean

# Desinstalar o pacote
make uninstall

Configuração

Chave da API do Google AI

Você precisa de uma chave de API do Google AI para usar esta biblioteca. Você pode obter uma no Google AI Studio.

Você pode configurar a chave da API de uma destas formas:

  1. Variável de ambiente:
export GOOGLE_API_KEY='sua-chave-api-aqui'
  1. No seu arquivo de teste Robot Framework:
*** Variables ***
${GOOGLE_API_KEY}    sua-chave-api-aqui
  1. Ao importar a biblioteca:
*** Settings ***
Library    JTechRobotFrameworkAI    sua-chave-api-aqui

Uso

Uso Básico

*** Settings ***
Library    JTechRobotFrameworkAI    ${GOOGLE_API_KEY}

*** Test Cases ***
Exemplo de Teste
    ${resposta}=    Enviar Mensagem Para IA    Qual é a capital da França?
    Should Contain    ${resposta}    Paris

Uso Assíncrono

*** Test Cases ***
Exemplo Assíncrono
    ${resposta}=    Enviar Mensagem Para IA Async    Quanto é 2+2?
    Should Contain    ${resposta}    4

Gerenciamento de Histórico de Chat

*** Test Cases ***
Exemplo de Histórico de Chat
    Reiniciar Chat IA
    Enviar Mensagem Para IA    Olá
    Enviar Mensagem Para IA    Como você está?
    ${historico}=    Obter Historia Chat IA
    Log    ${historico}

Keywords Disponíveis

  • Enviar Mensagem Para IA: Envia uma mensagem para o modelo de IA e obtém a resposta
  • Enviar Mensagem Para IA Async: Envia uma mensagem de forma assíncrona
  • Reiniciar Chat IA: Reinicia o histórico do chat
  • Obter Historia Chat IA: Obtém o histórico atual do chat

Tratamento de Erros

A biblioteca inclui tratamento robusto de erros para:

  • Erros de autenticação da API
  • Timeouts de rede
  • Respostas inválidas
  • Limitação de taxa

Todas as operações são automaticamente repetidas com backoff exponencial.

Estrutura do Projeto

jtech-robotframework-ai/
├── jtech_robotframework_ai/
│   ├── __init__.py      # Interface da biblioteca Robot Framework
│   └── core.py          # Implementação do cliente AI
├── tests/
│   └── test_ai_library.robot
├── Makefile            # Comandos de desenvolvimento
├── README.md
├── requirements.txt
└── setup.py

Boas Práticas

  1. Sempre trate a chave da API de forma segura
  2. Use variáveis de ambiente para dados sensíveis
  3. Reinicie o histórico do chat ao iniciar novos cenários de teste
  4. Implemente tratamento adequado de erros em seus testes
  5. Use operações assíncronas para melhor desempenho quando apropriado

Licença

MIT License

Metadata

Release files for JTechRobotFrameworkAI 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for JTechRobotFrameworkAI 0.1.0
File Size Uploaded Provenance
jtechrobotframeworkai-0.1.0.tar.gz 13.2 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for JTechRobotFrameworkAI 0.1.0
File Interpreter ABI Platform
jtechrobotframeworkai-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 29.3 kB

Release files / jtechrobotframeworkai-0.1.0.tar.gz

Download URL jtechrobotframeworkai-0.1.0.tar.gz
Size 13.2 kB
Tags Source
SHA-256 checksum
How to use checksums
b4e7b29e191f3373bc3a64400151236ec407fa36c3947a5756e00f35e38f3647
BLAKE2b-256 checksum
How to use checksums
b854e588eeb60fad4039d68a01b9e1196c1f31b87ef26a99f741d024ddfb6349
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.9

Release files / jtechrobotframeworkai-0.1.0-py3-none-any.whl

Download URL jtechrobotframeworkai-0.1.0-py3-none-any.whl
Size 16.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d1446f8e29b4d351517a8edb315ac3d68007fb08aa8264e2eb9dca445227d6df
BLAKE2b-256 checksum
How to use checksums
c7e30821db9f08ffa706a544a7e7a601b7e7a6843232cda21b9d6b783f6eb37b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.9

Security for JTechRobotFrameworkAI 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page