Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/QAInsights/JEval
⚡ JEval helps you to evaluate your JMeter test plan and provides recommendation before you start your performance testing. All contributions welcome 🙏.
https://github.com/QAInsights/JEval
apache jeval jmeter performance performance-engineering performance-testing python testing tools utilities
Last synced: 3 months ago
JSON representation
⚡ JEval helps you to evaluate your JMeter test plan and provides recommendation before you start your performance testing. All contributions welcome 🙏.
- Host: GitHub
- URL: https://github.com/QAInsights/JEval
- Owner: QAInsights
- License: mit
- Created: 2020-09-17T23:12:26.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2020-10-21T01:16:20.000Z (about 4 years ago)
- Last Synced: 2024-01-25T07:34:53.287Z (10 months ago)
- Topics: apache, jeval, jmeter, performance, performance-engineering, performance-testing, python, testing, tools, utilities
- Language: Python
- Homepage:
- Size: 710 KB
- Stars: 29
- Watchers: 7
- Forks: 8
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
- awesome-jmeter - JEval - A Python-based utility which evaluates JMeter test plan and provides recommendations and best practices by analyzing each element. (Tools / Editors)
README
# 🚀 JEval
[![All Contributors](https://img.shields.io/badge/all_contributors-3-orange.svg?style=flat-square)](#contributors-)
[![contributions welcome](https://img.shields.io/badge/contributions-welcome-1EAEDB)]()
[![saythanks](https://img.shields.io/badge/say-thanks-1EAEDB.svg)](https://saythanks.io/to/catch.nkn%40gmail.com)
[![](https://img.shields.io/badge/license-MIT-0a0a0a.svg?style=flat&colorA=1EAEDB)](https://qainsights.com)
[![](https://img.shields.io/badge/%E2%9D%A4-QAInsights-0a0a0a.svg?style=flat&colorA=1EAEDB)](https://qainsights.com)
[![](https://img.shields.io/badge/%E2%9D%A4-YouTube%20Channel-0a0a0a.svg?style=flat&colorA=1EAEDB)](https://www.youtube.com/user/QAInsights?sub_confirmation=1)
[![](https://img.shields.io/badge/donate-paypal-1EAEDB)](https://www.paypal.com/paypalme/NAVEENKUMARN)
***************************************************************
* _ ______ _ *
* | | | ____| | | *
* | | | |__ __ __ __ _ | | *
* _ | | | __| \ \ / / / _` | | | *
* | |__| | | |____ \ V / | (_| | | | *
* \____/ |______| \_/ \__,_| |_| *
* *
* (c) NaveenKumar Namachivayam 2020 *
* QAInsights.com *
* *
***************************************************************JEval helps you to evaluate your JMeter test plan and provides recommendation before you start your performance testing.
# 🛠 Prerequisites
* Clone this repository.
* Install the latest version of Python
* Install the dependencies
`pip install -r requirements.txt`**Important Notes**
* *JEval doesn't make any modifications to your JMeter test plan. But it is advisable to make a backup of your JMeter test plan.*
* *JEval utility doesn't collect any sort of data*# ✨ Usage
* cd into the repository
* Issue the below command
`python app.py -f `
E.g.
`python app.py -f .\jmx\Sample.jmx`## 💪 Output
![JEval Output](./assets/JEval-Output.jpg)
# ✍ Log file
To view the log, open the `tmp.log` file.
# ✔ Features
* JEval detects the JMeter version and validates the test plan.
* JEval detects the following:
**JMeter elements**
- AuthManager
- CookieManager
- HeaderManager
- CacheManager
- CSVDataSet
- TransactionController
- ConfigTestElement
- ConstantTimer
- UniformRandomTimer
- GaussianRandomTimer
- Arguments
- ProxyControl
- RegexExtractor
- TestAction
- BeanShellSampler
- JSR223Sampler
- IfController
- LoopController
- ResultCollector
- ResponseAssertion
- XPath2Assertion
- JSONPathAssertion
- DebugSamplerIf you want to add custom elements, you can add it in the `config.yaml` file.
**JMeter Plugins (default)**
- DummySampler
- UDP
- SeleniumWebDriver
- VisualizerYou can add custom plugins in `config.yaml` file under Custom tag, as shown in below example.
```yaml
Custom:
Plugin1: org.Sample.plugin.name
DummySampler: kg.apc.jmeter.samplers.DummySampler
```# 🛑 Limitations
* If the elements added inside `Controllers` elements e.g. `Loop Controller`, then those elements will not be detected.
# 💰 Donate
☕ Buy me a tea## Contributors ✨
Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):
NaveenKumar
💻
Anthony Gauthier
💻
Leela Prasad
💻
This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!