# RoostGPT Test Generation - Prerequisites

## Overview

Before using RoostGPT for test generation, ensure you have the following prerequisites based on your test type.

---

## 1. Git Integration (For PR Output)

**When needed:** If test output should be created as a Git Pull Request

**Required:**

- Git Personal Access Token with Read, Write, and Create PR permissions
- Repository URL and target branch name

**Support Link:** [https://docs.roost.ai/books/git-configuration-and-tokens](https://docs.roost.ai/books/git-configuration-and-tokens)

---

## 2. AI Provider Access Token

**When needed:** For all test generation

**Required:**

- API Key/Access Token from one of the supported providers: 
    - OpenAI
    - Claude AI (Anthropic)
    - Azure OpenAI (API Key + Endpoint)
    - Vertex AI (Google Cloud)
    - AWS Bedrock
    - Deepseek

**Support Link:** [https://docs.roost.ai/books/ai-configuration-and-tokens](https://docs.roost.ai/books/ai-configuration-and-tokens)

---

## 3. Jira Integration (For Functional Tests)

**When needed:** Generating functional tests from Jira tickets

**Required:**

- Jira Access Token
- Jira Domain URL (e.g., `https://company.atlassian.net`)

---

## 4. UI Test Generation - Login Credentials

**When needed:** Generating UI/E2E tests requiring authentication

**Required:**

- Application Login Username
- Application Login Password

---

## 5. UI Test Generation - Scenario Document

**When needed:** Testing specific user workflows or scenarios

**Required:**

- Document containing scenario details (PDF, Markdown, or Text format)
- Document should include: 
    - Scenario name
    - Test steps
    - Expected results
    - Test data

---

## 6. UI Test Generation - Custom Login Steps Document

**When needed:** Application has non-standard login flows (SSO, OAuth, custom authentication)

**Note:** MFA (Multi-Factor Authentication) is not supported

**Required:**

- Document describing custom login steps
- Document should include: 
    - Login method type
    - General authentication process