Skip to main content

A CLI for lila.dev

Project description

PyPI version Documentation Status CI Twitter Discord GitHub Repo stars

Lila is the best testing framework for fast moving teams developing webapps.

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.

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://www.google.com/maps

  - input: Empire State on the main search bar
    verify: a dropdown with suggestions appears

  - click: on the first suggestion from the dropdown
    verify: the map shows the Empire State Building in NY

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

Install Chromium web drivers for Playwright

playwright install chromium

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 location
  • --headless: If present, does not open browser
  • --debug: Displays debug logs

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

[runtime]
fail_fast = true
output_dir = "lila-output"
concurrent_workers = 4
server_url = 'https://app.lila.dev'

Documentation

For comprehensive documentation, visit docs.lila.dev.

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.8.tar.gz (17.6 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.8-py3-none-any.whl (17.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: lilacli-0.1.8.tar.gz
  • Upload date:
  • Size: 17.6 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.8.tar.gz
Algorithm Hash digest
SHA256 d486f129001dc137b988e894ef0ae9e3de963c6b316af404ad95872af36ce6fc
MD5 9fe474e2f32081b3f2221a04215012a7
BLAKE2b-256 8dff6a35c5310e0beb69b7225e486395483c5979693b04ce9fea9c3c5490268f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: lilacli-0.1.8-py3-none-any.whl
  • Upload date:
  • Size: 17.0 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.8-py3-none-any.whl
Algorithm Hash digest
SHA256 de0c705ce49ebee27345dbc0cedc4ae63ea637c6aa540fb31a9872efc28ea34e
MD5 372256dda4a7c5c11d1ad10ac6d17067
BLAKE2b-256 03a7646bb4128a8a164add757abbf66d4de662ae56b915e2ac9842a0bafff962

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