Test runner for Lavague
Project description
Test runner for LaVague
LaVague Test Runner is a tool designed to run tests on real websites and generate comprehensive reports. It can be easily launched using the lavague-test command.
Usage
To run the LaVague Test Runner, use the lavague-test command. Below are the available options and their descriptions:
Command Options
-
--directory / -d
- Default: current working directory + "/lavague-tests/sites"
- Type: str
- Description: Specifies the directory where the site test files are located.
-
--site / -s
- Default: test on all sites described in -d directory
- Type: str
- Description: Specifies the site names to run tests on. This option can be used multiple times to specify multiple sites.
-
--display
- Type: flag
- Description: If set, the browser will be displayed during the tests.
Site Test Folder Structure
Each site to be tested must be a folder containing a config.yml
file with the test configuration. Below is an example structure:
lavague-tests/sites/
└── example-site/
└── config.yml
The config.yml file define tasks with the following structure:
type: web
max_steps: 5 # max number of action engine retry
n_attempts: 1 # max number of agent retry
user_data: # optional user data to feed the Agent
key: value
tasks:
- name: Name # Optional display name
max_steps: 5 # to override global value
n_attempts: 1 # to override global value
url: https://example.com # the intial task URL
prompt: Prompt for the agent # the agent prompt
expect: # the list of tests to perform on task completion, see below for details
- <property> <operator> <value>
user_data: # optional task-scoped user data to feed the Agent
key: value
Available operators:
Operator | Python operation |
---|---|
is | operator.eq |
is not | operator.ne |
is lower than | operator.lt |
is greater than | operator.gt |
contains | operator.contains |
does not contain | not operator.contains |
Available properties:
Property | Type |
---|---|
URL | string |
Status | success / failure |
Output | string |
Steps | number |
HTML | string |
Tabs | string |
Example of config.yml
tasks:
- name: HuggingFace navigation
url: https://huggingface.co/docs
prompt: Go on the quicktour of PEFT
expect:
- URL is https://huggingface.co/docs/peft/quicktour
- Status is success
- HTML contains PEFT offers parameter-efficient methods for finetuning large pretrained models
- name: HuggingFace search
url: https://huggingface.co
prompt: Find the-wave-250 dataset
expect:
- URL is https://huggingface.co/datasets/BigAction/the-wave-250
- Status is success
Output
lavague-test
will output a report with successes and failures.
If all tests passed exit code will be 0, and -1 if at least one test failed.
Example:
[o] HuggingFace navigation
URL is https://huggingface.co/docs/peft/quicktour
Status is success
HTML contains PEFT offers parameter-efficient methods for finetuning large pretrained models
[o] HuggingFace search
URL is https://huggingface.co/datasets/BigAction/the-wave-250
Status is success
[x] Go to LaVague.ai from https://google.com
(x) URL is https://lavague.ai - was: https://www.google.com/
(x) Status is success - was: failure
[o] Navigate using link
URL is http://localhost:8000/menu.html
Status is success
HTML contains <h1>Menu</h1>
Result: 80 % (8 / 10)
Use with static local website
In config.yml
set type
to static
to serve a static website locally.
The following options are available:
- directory : the directory to serve files from. Defaults to
www
; - port : the port to serve the files on. Defaults to 8000.
Use with dynamic local website
Initialization command for local websites will be available soon.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file lavague_tests-0.0.1.tar.gz
.
File metadata
- Download URL: lavague_tests-0.0.1.tar.gz
- Upload date:
- Size: 7.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.10.12 Linux/5.15.153.1-microsoft-standard-WSL2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5852b4794cf2048398599b88a555124e138f46530b2dc8596abf4b4545937aef |
|
MD5 | 958b01547b2f24de3abf37760e1a3a62 |
|
BLAKE2b-256 | f39dabfd582a6f2edf2ae3fdebca831eb0d0374f32822472fca3865eeea8c4a0 |
File details
Details for the file lavague_tests-0.0.1-py3-none-any.whl
.
File metadata
- Download URL: lavague_tests-0.0.1-py3-none-any.whl
- Upload date:
- Size: 8.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.10.12 Linux/5.15.153.1-microsoft-standard-WSL2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 29da47213a0a935e4b113289ff4e668ba727b830e76edaa4d7d6a087cb4e0334 |
|
MD5 | 0061e82e5d096d1e2e22b256b9fb29c2 |
|
BLAKE2b-256 | d95e40f93b8464ce95663c090fa5e0aa5494659f985ab50849c42f16cc1d3fd8 |