What are Behavior Tests?
Behavior tests in Galtea are designed to evaluate your product through multi-turn dialogue interactions — whether it’s a conversational chatbot, a task-oriented assistant, or an autonomous AI agent. These tests use the Conversation Simulator to create realistic conversations with simulated users that have specific goals, personalities, and behaviors. Unlike Accuracy Tests that focus on single-turn question-answer pairs, or Security & Safety Tests that test security vulnerabilities, Behavior tests evaluate how well your AI product can:- Maintain context across multiple conversation turns
- Guide users toward successful task completion
- Handle unexpected but realistic user inputs
- Stay in character and follow conversation guidelines
- Execute multi-step workflows and manage complex dialogue flows
Creating Behavior Tests
You can create behavior tests in Galtea through two methods:- Behavior Generator
- Upload Your Own Behavior Tests
1
Define Your Product
Start by defining your product in Galtea. These detailed product properties will be used as the foundation for generating realistic behavior scenarios.
2
Configure the test
Select Behavior as the test type and Generated as the test origin
The test creation process can be done via the SDK or the Galtea dashboard
3
Generate Behavior Scenarios
Galtea will automatically analyze your product definition to create tailored conversation scenarios, complete with:
- Realistic user personas based on your target audience
- Goals aligned with your product’s use cases
- Natural conversation flows that test key features
Conversation Flow Categories
Behavior tests can cover various types of conversational interactions:Task Completion
Task Completion
Scenarios where the simulated user has a specific goal to accomplish, such as booking a service, making a purchase, or getting support for an issue.
Information Seeking
Information Seeking
Scenarios focused on retrieving specific information or answers, testing the AI’s knowledge and ability to provide helpful responses.
Customer Support
Customer Support
Scenarios that simulate customer service interactions, including complaints, troubleshooting, and problem resolution.
Sales and Consultation
Sales and Consultation
Scenarios where the user is exploring options, comparing products, or seeking advice before making decisions.
Complex Multi-Step Processes
Complex Multi-Step Processes
Scenarios that involve multiple stages or require gathering various pieces of information over several turns.
Edge Cases and Challenges
Edge Cases and Challenges
Scenarios that test how the AI handles difficult, unclear, or unexpected user behavior while maintaining conversation quality.
Example Behavior Tests and File Format
Here are examples of behavior test content and structure:Travel Booking Scenarios
Travel Booking Scenarios
- Table View
- Raw CSV
Customer Support Scenarios
Customer Support Scenarios
- Table View
- Raw CSV
Sales and Consultation Scenarios
Sales and Consultation Scenarios
- Table View
- Raw CSV
This structure is required by Galtea to automatically generate the test cases for your behavior tests as tests within the platform. If this format is not provided, you can still manually create the test cases.
For automatic processing, the file format must be
CSV.Structure of Behavior Tests
Behavior tests have a specific structure designed to enable realistic conversation simulation:Text
required
The overall objective the simulated user is trying to achieve during the conversation.
Example: “Book a one-way flight from San Francisco (SFO) to New York (JFK) for next Tuesday”
Text
required
The personality and communication style of the simulated user that will be simulated throughout the conversation.
Example: “A busy professional who is direct and values efficiency. They prefer to get things done quickly without much small talk.”
Text
The first message the simulated user sends to start the conversation. If not provided, the system will generate an appropriate opening based on the goal and persona. Accepts a plain string or a JSON object for structured inputs (e.g.
{"user_message": "I need to book a flight", "channel": "web"}). When using structured JSON, the user_message field becomes the message content and additional fields are accessible via {{ input.field_name }} in endpoint templates and via messages[0].metadata in the SDK.
Example: “Hello, I need to book a flight.”Text
A delimited string of conditions that, if met, will cause the conversation simulation to end. Use
; or | as delimiters to separate multiple criteria.
Example: “The user has confirmed the flight booking|The chatbot indicates it cannot fulfill the request;User expresses satisfaction with the service”Number
The maximum number of conversation turns before the simulation automatically ends. This prevents infinite loops and controls test duration.
Example: 10
Text
A brief description of the scenario for documentation and organizational purposes. This helps categorize and manage different types of conversation tests.
Example: “Flight booking scenario for business travelers”
Using Behavior Tests with the Conversation Simulator
Behavior tests are specifically designed to work with Galtea’s Conversation Simulator. When you run evaluations using behavior tests, the system will:- Initialize the conversation using the
inputanduser_persona - Generate realistic user responses based on the
goaland conversation history - Continue the dialogue until one of the
stopping_criteriasis met ormax_iterationsis reached - Evaluate the conversation using your selected metrics to assess performance
Data Catalog
When generating behavior tests, you can optionally upload a Data Catalog — a file containing reference data from your product’s domain. This helps the generator produce scenarios grounded in realistic values rather than fully fictional ones.The data catalog does not need to contain real production data. Synthetic samples, anonymized
records, or representative mock data all work equally well — what matters is that the values
reflect the shape and variety of your domain.
How it works
Values from the data catalog are incorporated into the scenario field of each generated test case. User personas remain fully synthetic and are never populated from the catalog. For example, if your product is a banking assistant, a data catalog might include sample account types, transaction descriptions, and card IDs. The generator would then reference those values in scenarios like “User asks about a pending charge of €47.80 at REST LA BARRACA on card C-001” instead of inventing generic placeholders.Supported formats
CSV, JSON, JSONL, XML, YAML, and TXT files up to 50 MB.What to include
- Domain entities your users would reference (product names, plan tiers, category labels)
- Sample identifiers (order IDs, ticket numbers, account codes)
- Representative amounts, dates, or statuses
- Any reference data that makes scenarios feel grounded in your specific domain
What to avoid
- Actual customer PII or production credentials
- Internal system IDs or backend states that end users would never see
- Extremely large datasets — the generator uses up to ~50,000 characters of content
Best Practices for Manually Creating Behavior Tests
Goal Definition
Goal Definition
- Make goals specific and measurable
- Include realistic constraints (time, budget, preferences)
- Vary complexity across different scenarios
- Consider both successful and unsuccessful outcomes
User Persona Creation
User Persona Creation
- Include personality traits that affect communication style
- Specify technical knowledge level and domain expertise
- Define emotional states and motivations
- Consider cultural and contextual factors
Stopping Criteria Design
Stopping Criteria Design
- Include both positive outcomes (goal achieved) and negative outcomes (failure, frustration)
- Account for edge cases where the conversation might stall
- Use multiple criteria connected with ”|” or ”;” to cover various scenarios
- Make criteria specific enough to be clearly identifiable
Scenario Coverage
Scenario Coverage
- Test common user journeys and edge cases
- Include scenarios with different complexity levels
- Cover various user types and use cases
- Test both cooperative and challenging user behaviors
Related
Input Schema
Define structured, multi-field inputs for generated test cases.
Simulating Conversations
Tutorial on running multi-turn conversation simulations with the SDK.
Conversation Simulator
Learn how the Conversation Simulator creates realistic synthetic dialogues.