Metadata-Version: 2.1
Name: robotframework-scaffold
Version: 0.1.9
Summary: A scaffold tool for structuring Robot Framework projects with best practices.
License: MIT
Author: Robot Courses
Author-email: git@robotcourses.com.br
Requires-Python: >=3.8,<4.0
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Dist: click (==8.1.8)
Requires-Dist: pyyaml (>=6.0.2,<7.0.0)
Description-Content-Type: text/markdown

# 🤖 robotframework-scaffold

Uma ferramenta de linha de comando (CLI) interativa para criar projetos baseados em Robot Framework de forma rápida, padronizada e com boas práticas desde o início.

## 🔍 Sumário
- [🤖 robotframework-scaffold](#-robotframework-scaffold)
  - [🔍 Sumário](#-sumário)
  - [🚀 O que é?](#-o-que-é)
  - [✅ Funcionalidades](#-funcionalidades)
  - [🛠️ Requisitos](#️-requisitos)
  - [📦 Instalção](#-instalção)
  - [✌️ Utilização](#️-utilização)
  - [📁 Estrutura Gerada](#-estrutura-gerada)
  - [💡 Dicas](#-dicas)
  - [📄 Licença](#-licença)

## 🚀 O que é?

O **Robotframework-scaffold** é um gerador de estrutura de projeto para testes automatizados com **Robot Framework**, que permite escolher entre os tipos de teste mais comuns:

 - **API** (com *RequestsLibrary*)
 - **Web** (com *SeleniumLibrary* ou *BrowserLibrary*)
 - **Mobile** (com *AppiumLibrary*)

Além disso, o usuário pode escolher entre gerenciar o ambiente virtual com **Poetry** ou **venv**.

## ✅ Funcionalidades

- Criação de estrutura de pastas organizada e modular.
- [APENAS PARA API, POR ENQUANTO] Criação automática de código, com base no Swagger/OpenAPI.
- Instalação automática das bibliotecas essenciais com base no tipo de projeto.
- Criação de ambiente virtual com venv ou Poetry.
- Compatível com as boas práticas de desenvolvimento e organização de testes com Robot Framework.
- Suporte a múltiplas bibliotecas de automação web (SeleniumLibrary e BrowserLibrary).
- Experiência interativa via terminal.


## 🛠️ Requisitos

- Python 3.8 (*versão mínima suportada pelo Robot Framework 7.x*) ou superior
- Poetry (*opcional, para uso do gerenciador Poetry*)
- Acesso ao terminal ou prompt de comando


## 📦 Instalção

Você pode instalar localmente usando o  `pip` conforme abaixo:

```bash
pip install robotframework-scaffold
```

## ✌️ Utilização

O **robotframework-scaffold** segue um fluxo interativo, via terminal para criação de projetos, uma vez instalado, basta executar o seguinte comando:

```
robot-scaffold init
```

Após isso, uma série de perguntas serão realizadas para que o robotframework-scaffold entenda qual a sua necessidade. Atualmente o projeto possui suporte para API, WEB e MOBILE. Sendo que, na versão atual, apenas o fluxo de API realiza a geração automática de código, a partir de um Swagger/OpenAPI.

Para os fluxos Mobile e WEB, a geração automática de código chegará em versões futuras.

Abaixo, um breve vídeo demostrando a utilização do **robotframework-scaffold**:



## 📁 Estrutura Gerada
A estrutura do projeto é criada de forma modular, respeitando o tipo escolhido durante a criação. Veja abaixo exemplos para cada tipo:

- 🔌 Projeto API

```
.
├───resources/
│   ├───common/
│   ├───connections/
│   ├───data/
│   ├───routes/
│   └───utils/
├───tests/
│   .gitignore
│   base.resource
│   pyproject.toml
│   README.md
```

- 🌐 Projeto Web

```
.
├───resources/
│   ├───common/
│   ├───data/
│   ├───locators/
│   ├───pages/
│   └───utils/
├───tests/
│   .gitignore
│   base.resource
│   pyproject.toml
│   README.md
```

- 📱 Projeto Mobile

```
.   
├───resources/
│   ├───app/
│   ├───common/
│   ├───data/
│   ├───locators/
│   ├───pages/
│   └───utils/
├───tests/
│   .gitignore
│   base.resource
│   pyproject.toml
│   README.md
```

## 💡 Dicas

Se você estiver usando VSCode, o ambiente .venv será detectado automaticamente.

Para ativar o ambiente com venv, use:

- **Windows:** `.venv\Scripts\activate`

- **Unix/macOS:** `source .venv/bin/activate`


## 📄 Licença
Este projeto está licenciado sob a licença MIT.
