Welcome to the LPS Tool – your ultimate companion for Load, Performance, and Stress testing!
🛠️ The LPS Tool (Load, Performance, and Stress Testing Command Tool) is a flexible framework for testing your web application's performance under simulated load.
- 🔁 Built on Rounds and Iterations for structured testing
- 🎛️ Offers flexible Iteration Modes to simulate real-world traffic
- 📊 Helps evaluate system scalability, endurance, and resilience
- ⚙️ Empowers developers and QA engineers with powerful testing scenarios
🧭 LPS Tool is cross-platform – it works on Windows, Linux, and macOS!
You can now install the LPS Tool directly from NuGet as a global .NET CLI tool:
dotnet tool install --global lps✅ Requirements:
Make sure you have .NET 8 SDK or Runtime installed on your machine.
After installation, you can run LPS from anywhere using:
lps --version✨ That’s it! You’re ready to start load testing with LPS Tool.
lps --url https://www.example.com --numberofclients 1000 --arrivaldelay 100📎 Starts 1000 clients gradually with a 100 ms delay between client arrivals
lps --url https://www.example.com -rc 1000📎 Sends 1000 GET requests to the specified URL
lps --url https://www.example.com -rc 1000 --httpmethod "POST" --payload "Inline Payload"📎 Sends 1000 POST requests with a plain text payload
lps --url https://www.example.com -rc 1000 --httpmethod "POST" --payload "Path:C:\Users\User\Desktop\LPS\urnice.json"📎 Sends 1000 POST requests using a JSON file as payload
lps --url https://www.example.com -rc 1000 --httpmethod "POST" --payload "URL:https://www.example.com/payload"📎 Sends 1000 POST requests where the payload is fetched from a URL
🌍 Distributed testing is supported starting from v2.0.2_preview.
📖 Learn more in the Distributed Load Testing Article
Explore full docs in the 📖 LPS Docs Repo
- 🧾 Commands
- 📄 Articles
- 🧠 Concepts
- 💡 Examples
- 🔄 Migration Guide - Upgrading from v3.0.2.5 to v3.0.2.6+
⚠️ Warning: This documentation applies only to version 2.0_Preview and above of the LPS Tool. For earlier versions, please visit thereadme.mdin each version's directory.
⚠️ Note: Version 2.x is NOT backward compatible with 1.x.
🔄 Breaking Change in v3.0.2.6: The
failureCriteriaand oldterminationRulesformats have been permanently removed. The last version supporting the old format was v3.0.2.5. See the Migration Guide for details on the newfailureRulesandterminationRulesinline metric expression format.