Skip to main content

A CLI for lila.dev

Project description

PyPI version Documentation Status CI

Lila CLI is a powerful tool for running end-to-end tests written in human-readable plain text using YAML files. It simplifies the testing process by allowing anyone in the team to write tests in a natural, easy-to-understand format.

No coding required.

Visit Lila at https://lila.dev

How does it work?

Lila runs your app in a local browser with Playwright and uses an LLM-powered engine to guide the CLI run the high level instructions.

Why Lila?

  • No coding required
  • Self healing tests, does not rely on low level implementation
  • Anyone in the team can implement tests
  • Integrates natively with Playwright storage states
  • Runs browser locally, making it ideal for localdev or staging environments

Test example

steps:
  - goto: https://google.com
  - search: for "Orcas"
  - click: on the images tab
  - verify: there are images of orcas
  - click: on the 3rd image
  - verify: it opens a panel with the augmented image

For more information on how to build tests, checkout the guides

For test examples, Lila runs daily a suite of tests over public URLs. Check them out here

Getting started

Create a free account

You will need a free account to try Lila. Create your free account at https://lila.dev

Installation

Lila CLI requires Python 3.11 or higher. Install it using pip:

pip install lilacli

Quick Start

Initialize a new Lila test project:

lila init

This command creates a template structure with example tests to help you get started.

Running Tests

Fetch your LILA_API_KEY from the app and run your tests using the run command:

LILA_API_KEY=<your-api-key> lila run <folder/file>

Command Line Options

  • --browser-state: Initialize the browser with a Playwright JSON storage session
  • --tags: Filter tests by specified comma-separated tags
  • --exclude-tags: Filter out tests by specified comma-separated tags
  • --output-dir: Specify the output directory for the browser states
  • --config: Point to the lila.toml config file if not using the root locaiton

Example runs

lila run tests/
lila run tests/one-specific-test.yaml
lila run tests/ --tags foo,bar
lila run tests/subtests --exclude-tags baz
lila run tests/user-login.yaml
lila run tests/user.yaml --browser-state tests/user-login.json

Configuring Lila

Configuration can be set in lila.toml file. For the full spec, checkout the documentation

Configuration example

[browser]
type = "chromium"
width = 1536
height = 1152
headless = true

[runtime]
fail_fast = true
output_dir = "lila-output"
concurrent_workers = 4

Documentation

For comprehensive documentation, visit docs.lila.dev. The documentation includes:

Examples

Find a variety of test examples in our examples repository, showcasing different testing scenarios and best practices.

Contact

Reach out at info@lila.dev

Join our Discord server

Follow us at Twitter - X

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

lilacli-0.1.7.tar.gz (19.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lilacli-0.1.7-py3-none-any.whl (18.7 kB view details)

Uploaded Python 3

File details

Details for the file lilacli-0.1.7.tar.gz.

File metadata

  • Download URL: lilacli-0.1.7.tar.gz
  • Upload date:
  • Size: 19.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.11.11

File hashes

Hashes for lilacli-0.1.7.tar.gz
Algorithm Hash digest
SHA256 2e510b817aeaaecae2856ed6720c1f811c086a693f5222e8b26b0243dfd3ba19
MD5 b43167588e2f39aaeded8e0c8ff5bbb2
BLAKE2b-256 636f83c1452b9faeab353437314ec1c9ae8fdde8fef62d9df857d40ace08a40e

See more details on using hashes here.

File details

Details for the file lilacli-0.1.7-py3-none-any.whl.

File metadata

  • Download URL: lilacli-0.1.7-py3-none-any.whl
  • Upload date:
  • Size: 18.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.11.11

File hashes

Hashes for lilacli-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 2e0b5579e2d6dbdf47625104a9d643489b66164d855379085e1eeb0d19f011af
MD5 495e268a1fe5e94de918b944bf523349
BLAKE2b-256 e3fbc61af072ed763c35a235053ddc65cc3b225417fcaf07b83380c7f72f51ed

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page