Hi My opinion
We are aware and a lot of them have been already discuted The problem is the lack of time Antonio Le 30 oct. 2017 14:11, "Philippe Mouawad" <p.moua...@ubik-ingenierie.com> a écrit : > Hello Emilian, > Find my 2 cents below. > > > Regards > > On Mon, Oct 30, 2017 at 1:27 PM, Emilian Bold <emilian.b...@protonmail.ch> > wrote: > > > Hello, > > > > I've been following JMeter for a while now, even did a separate project > > based on JMeter (YaMeter.com ) so I figured I should mention some > > (technical) concerns of mine about JMeter. > > > > I thought about sending multiple emails, each about a single aspect, but > I > > will just list everything here and people are invited to only answer the > > subset they care about. > > > > 1. Userbase > > > > It seems to me there are no clear metrics about the JMeter userbase. We > > have no phone-home, no plugin portal, no download statistics(!?) so we > can > > only use indirect means of estimating the userbase: stackoverflow > questions > > and such. > > > > This seems a very poor state of affairs. Resources are scarce: how do you > > know what to focus on if you have very little insight into who your users > > are, what are they doing and where are they struggling? > > > > > 1.1 Metrics > > > > I believe it is possible to add usage metrics to JMeter while respecting > > the ASF policy on privacy, etc. > > > > It's also unclear to me how download stats are not shared by the Apache > > mirrors (any ASF document explaining this policy?). > > > > I agree with this. > I have asked Apache infra if we are able to get some metrics but it seems > it's not the case. > I am also very unhappy with this and have to default to: > > - stackoverflow questions > - downloads of plugins > - user mails > > > > > > > > 2. Speed of development > > > > Compared to some of the plugins, JMeter seems to move very slowly. This > > might create the impression of stability but I believe it's just a sign > of > > being resource constrained. > > > > Partly true IMO: > > - I think we're a bit slower partly because we are maybe more exigent on > quality and have to handle more problems than plugins project: > - backward compat / not breaking plugins > - more use cases > - I find personally the release process too slow: > - I work on JMeter Maven Plugin, whenever I want to release a > version, it takes me 10 minutes max thanks to rultor/maven.( > https://github.com/jmeter-maven-plugin/jmeter-maven- > plugin/issues/245) > - On JMeter, we need a release manager to be available, then it's a > manual process partly that takes at least 4 hours and a lot of > configuration for a new release manager (where is svnmucc on Mac > OSX) but > more a day I think and finally we have 3 days of vote process, I > think the > last one is Apache process related, I don't think anything can be > done. > - Still there are some benefits, I think we find more bugs in this > process, but we could also be releasing more frequently. > > But another thing, did you have a look at the frequency at which user > upgrade ? > > I still see a lot of people using version that are 5 year old, so if we > released more often, would user upgrade their versions ? > > > > > Are any companies putting resources into JMeter? I see a lot of companies > > / startups trying to make money off JMeter but how many are contributing > > back? > > > > Not enough involvement in Core IMO: > > - My company Ubik-Ingenierie contributes in 2 ways: > - Patches, bug fixes > - Bigger features like JMeter Web Report , JSON Plugin > - Sponsoring partly my time for working on project > > I wonder for example why HTTP2 was not donated immediately to Core. > > > > > BTW, one reason I decided to do YaMeter.com instead of trying to push > into > > JMeter proper is the approval speed. Getting a patch in seems to take a > lot > > of effort and I can only imagine how long it would have take to try > > something as large as what I did with YaMeter. > > > > I think we have made improvements in that field, have a look at PR and > Patches taken into account, look at thanks section of every released. > I don't think we are slow to take into account PR provided they are > complete. We give feedback in max 1 days AFAIK. For bugs it is even less. > I don't know statistics of other projects , but from my experience we are > good here. > Regarding YaMeter, I thing we would have integrated it very quickly. I > wrote to you about it. > > Regarding Undo, I was commited after the release, but as you know it is > still not satisfying . > > But I agree that donating some important piece of work is not simple as the > IP Clearance process is not a light one, we had to use it for integrating > Web Report, it is clearly > something that refrains other donations IMO. > > > > > 3. UI > > > > The JMeter UI needs some improving. The problem is not that it uses Java > / > > Swing because even Swing can be made to look good but we need people to > > look into this. Is it "good enough" for people being forced to use JMeter > > in a corporate setting? > > > Yes because the Core provides the feature you want for that. > Should people only look at UI for such a tool ? No IMO, it would be a > mistake. > I know a lot of Great UIs for "limited (to be polite)" cores, I prefer the > countrary for now :-) . > > > > > > Would an user pick it just based on the UI? > > > > No > > JMeter UI is clearly a bad publicity for the core. I am always disappointed > to read tweet about JMeter looking very 90, being ugly ... > > The IDE is powerful but the Swing look is not great and some LAF are even > more awful , for example the Windows one are very ugly on some OSes. > > > > 3.1 Swing > > > > If Swing remains the future of JMeter, I suggest looking into a better > > framework like Apache NetBeans Platform which provides a lot of useful > > things for desktop Java apps. > > > > Generally speaking, it would be good to split the UI from the "core" so > we > > have some path where we evolve to some other UI. > > > > If we had time , I would go for a full rewriting either in WEB or Using > Java FX, why not netbeans but I am not an expert of it. I am also very > impressed by IntelliJ look while it is in Swing AFAIK > > But I must say that developing UI in JMeter is rather easy and maintainable > from my little experience with such UIs > > > > > > 3.2 Web based > > > > Alternatively, a web-based interface could be made for JMeter. Any > > interest in this? > > > > Yes , but always the same problem , no time > > > > > Just like companies use local GitLab installations, I am certain a lot of > > companies would install a local Apache JMeter Web Portal where all the > load > > testing would be centralised. > > > > 4. Plugin Manager > > > > It seems unacceptable to me that JMeter does not have a Plugin Manager > and > > a plugin portal with some lower-usage plugins (eg. mongodb). > > > > It's acceptable for other plugins to exist elsewhere, but those should be > > just another "PPA" (see Ubuntu PPA) or another "plugin repository" URL to > > register. > > > > > I absolutely agree. When Andrei started his work on Plugin Manager, I wrote > that this feature should have been in JMeter core. > > > > > 5. Out of the box experience > > > > The way I see it, Apache JMeter is not just a "platform" with some core > > files and external plugins but something usable out of the box. > > > > So, except niche situations, users should be catered by the default > JMeter > > install. > > > Yes > > > > > 5.1 HTTP2 > > > > A major problem being the lack of an official HTTP2 plugin, which people > > have to take from elsewhere. Blazemeter is probably quite happy with > their > > implementation being used since it funnels people into their services. > > > > Did you get a confirmation from them that they would be ready to donate it > ? > > > > 6. Project based > > > > I find the whole configuration .properties file a very poor solution to > > the notion of a "project". If a JMX needs a .properties change, then > those > > two belong together. > > > > JMeter should have the notion of a 'project' and maybe even be capable of > > having two projects open at once. And executing two unrelated tests at > > once. (Same for servers perhaps?) > > > > Yes > > > > > 6.1 Too many .properties > > > > I also believe JMeter tries to be too configurable sometimes with flags > > for everything. > > > > Yes. There has been some cleanup but go ahead for proposing more cleanup. > > > > > 7. Module system > > > > JMeter is using a lot of reflection to reinvent its own quirky module > > system (which provides the way the plugins work). > > > > This needs some standardization work. > > > > The NetBeans Platform, for example, comes with its own module system that > > also supports OSGI bundles (another module system). Then, there's the JVM > > service locator (for services) and the Java 9 modules. > > > > Probably. OSGI is not a model for me. Too much headache. > JBoss modules was interesting but not enough documented. > Java 9 modules might be a good option. > > > > > 8. Remote is using old technologies > > > > RMI is a killer in modern setups. It needs open ports on both the slave > > and master for communication which only makes sense within the same > > intranet and it's a pain to configure when using Cloud resources. > > > > The whole communication between JMeter client and servers should be > > rewritten using more modern protocols. > > > > Absolutely, I think the future should be a rest webservice. > > > > 9. Cloud aware > > > > The notion that the user tries to configure N servers then gives JMeter a > > list of IPs for remote load testing seems... primitive. This is something > > I've been trying to solve with YaMeter.com > > > > 10. Packaging > > > > JMeter should be everywhere. Official Docker files, AMI images, etc. > > > > Not sure, that's a too big scope. Why AMI and not other clouds ? Why docker > and not other technologies ? > I think we need to limit the scope and there is enough communauty to help > here as we already see that. > > > > > > > 11. Pipeline aware / agents > > > > JMeter should think more about making it easy to be hooked up into a CI / > > CD pipeline. > > > > What do you propose ? > > > > > 12. Script files instead of JMX > > > > The XML files are a pain to diff and people like to track / compare > > changes in modern devops shops. > > > > Maybe a switch to YAML might suffice, but I believe a new scripting > > support (based on Groovy or whatever) should be developed. > > > > > This has been a subject of a lot of discussions, but unfortunately too much > talk and no code. > > > > > --emi > > > > Thanks for your feedback and insights on all these points. > > > -- > Cordialement. > Philippe Mouawad. > Ubik-Ingénierie > > UBIK LOAD PACK Web Site <http://www.ubikloadpack.com/> > > UBIK LOAD PACK on TWITTER <https://twitter.com/ubikloadpack> >