Awesome
FlowTestAI: Streamlining End-to-End API Testing
💡 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.
<img width="1728" alt="Screenshot 2024-04-18 at 5 41 43 PM" src="https://github.com/FlowTestAI/FlowTest/assets/5829490/c04f6e3e-fe69-4d25-a008-ba558c8fe149">🚀 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
- Download FlowTestAI for your OS from our releases page.
- Install and launch FlowTestAI like any other desktop application.
- Start creating end-to-end API tests using natural language or drag-and-drop.
- 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.
Analytics Setup (Optional)
- Visit https://www.useflowtest.ai/
- Go to Products -> Analytics -> Get Access Key Pairs
- For CLI: Export key pairs as environment variables
- For IDE: Open Settings and paste the access key pairs
- 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.
-
Installs nvm (Node Version Manager)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
-
Download and install Node.js
nvm install 18
-
Verifies the right Node.js version is in the environment
node -v # should print `v18.20.2`
-
Verifies the right NPM version is in the environment
npm -v # should print `10.5.0`
Main setup
-
Clone the repository
git clone https://github.com/FlowTestAI/FlowTest.git
-
Go into repository folder
cd FlowTest
-
This project uses pnpm. Use corepack to enable the required pnpm version:
corepack enable pnpm
or install with npm
npm install -g pnpm@9.0.6
-
Install all project dependencies:
pnpm install
-
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 jsajal1993@gmail.com.
- 🔐 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:
- OpenAI
- AWS Bedrock
- Google GEMINI
- [Local AI] (Coming Soon...)
📜 License
Source code in this repository is made available under the MIT License.
Connect with Us
- Website: useflowtest.ai
- Email: jsajal1993@gmail.com