Skip to content

FlowTestAI/FlowTest

Repository files navigation

FlowTestAI: Streamlining End-to-End API Testing

Release Notes Linkedin Twitter Follow Chat on Discord

πŸ’‘ We are proud to announce that we were recently featured in a LangChain blog post.

FlowTestAI is a powerful, code-agnostic tool designed to simplify the creation and execution of end-to-end API tests. With its intuitive interface and robust features, FlowTestAI empowers developers and QA teams to streamline their API testing process, improve collaboration, and gain valuable insights into their API performance.

Screenshot 2024-04-18 at 5 41 43β€―PM

πŸš€ Key Features

  • Low Code/No Code Solution: Create complex end-to-end API tests without writing code.
  • Natural Language Processing: Describe your test scenarios in plain English.
  • Support Leading LLMs: Choose from a wide range of leading LLMs: OpenAI, AWS Bedrock, Google Gemini etc.
  • Drag-and-Drop Interface: Visually design your API tests with ease.
  • OpenAPI Spec Integration: Automatically parse and pre-fill request nodes from your OpenAPI specifications.
  • Cross-Platform Compatibility: Available as an Desktop application for Mac, Windows, and Linux.
  • Local File System Integration: Direct interaction with local file system for enhanced privacy and control.
  • Version Control Ready: Easily collaborate using Git or any other VCS.
  • CI/CD Ready: Run tests in CI pipelines with our CLI tool.
  • Advanced Analytics: Gain insights into API performance and test results.

πŸ› οΈ Getting Started

Desktop App Installation

  1. Download FlowTestAI for your OS from our releases page.
  2. Install and launch FlowTestAI like any other desktop application.
  3. Start creating end-to-end API tests using natural language or drag-and-drop.
  4. Save your work locally and use Git for version control, just like with traditional IDEs.

CLI Installation (for CI/CD)

npm install -g flowtestai

https://www.npmjs.com/package/flowtestai

The CLI allows you to run flows created using FlowTestAI from command line interface making it easier to automate and run them in a CI/CD (continuous integration/development) fashion.

README

Analytics Setup (Optional)

  1. Visit https://www.useflowtest.ai/
  2. Go to Products -> Analytics -> Get Access Key Pairs
  3. For CLI: Export key pairs as environment variables
  4. For IDE: Open Settings and paste the access key pairs
  5. Now start publishing scans for each test run.

πŸ“š Documentation

https://flowtestai.gitbook.io/flowtestai

Setup

πŸ’» Production

FlowTestAI is an electron app that runs entirely in your local environment interacting with your local file system just like other IDE(s) out there like VSCode, Intellij etc. The platform-specific binaries are available for download from our GitHub releases. We currently offer binaries for macOS, with versions for Windows and Linux under development 🚧. If you require a binary for a specific platform, please let us know in the Discussions section. We will prioritize your request accordingly.

πŸ”§ Development

Prerequisite

This package uses version >= 18 of Node.js. There are different ways that you can install Node.js, following are steps for Node Verson Manager or NVM. If you need steps for other methods than NVM then please check Official Node.js documentation. Here is a sample walkthrough installing version 18.

  1. Installs nvm (Node Version Manager)

    curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
  2. Download and install Node.js

    nvm install 18
  3. Verifies the right Node.js version is in the environment

    node -v # should print `v18.20.2`
  4. Verifies the right NPM version is in the environment

    npm -v # should print `10.5.0`

Main setup

  1. Clone the repository

    git clone https://github.com/FlowTestAI/FlowTest.git
  2. Go into repository folder

    cd FlowTest
  3. This project uses pnpm. Use corepack to enable the required pnpm version:

    corepack enable pnpm

    or install with npm

    npm install -g [email protected]
  4. Install all project dependencies:

    pnpm install
  5. Build and start the app:

    pnpm start

    The app should start as a normal desktop app

    NOTE: if you use npm and corepack to install pnpm you will have two instances of pnpm. Make sure the version you're using is the correct version for the repo. Check the pnpm docs and corepack for troubleshooting. Pnpm installed with npm will overrun corepacks pnpm instance.

🀝 Contribution

"Little drops of water make a mighty ocean"

No contribution is small even if it means fixing a spelling mistake. Follow our contributing guide below. https://github.com/FlowTestAI/FlowTest/blob/main/CONTRIBUTING.md

Fun fact: our contributing guide itself was an external contribution 🍺

🌟 Support

  • ❓ QNA: feel free to ask questions, request new features or start a constructive discussion here discussion
  • πŸ› Issues: Feel free to raise issues here issues (contributing guidelines coming soon..)
  • πŸ”„ Integration: If you want to explore how you can use this tool in your day to day activities or integrate with your existing stack or in general want to chat, you can reach out to us at any of our social media handles or email me at [email protected].
  • πŸ” Our tool integrates with various leading Large Lanugage Models (LLMs) if you wish to use the natural language to flow translation feature. You can request their api keys:

πŸ“œ License

Source code in this repository is made available under the MIT License.

Connect with Us