How to run karate UI tests on any cloud platform [duplicate] - cross-browser

I would like to understand if,
- it makes sense to have Karate integration with SauceLabs
- Benefits if that is an Yes
Also, if i want to implement the integration what is the approach i should use.
I am planning to mimic the similar implementation using Selenium remote web driver. Please let me know if this is the only approach that can be taken or there is any other way out for this.

Yes, if SauceLabs conforms to the spec - refer to the documentation for webDriverSession: https://github.com/intuit/karate/tree/master/karate-core#webdriversession
Note that this has been proven to work with Zalenium: https://github.com/intuit/karate/tree/master/karate-core#webdriverurl
And also AWS Device Farm: https://twitter.com/ptrthomas/status/1222790566598991873
Please note that if you are ok to use only Chrome, the Docker approach may give you a better experience, but you can decide: https://github.com/intuit/karate/tree/master/karate-core#karate-chrome
EDIT - also see:
https://stackoverflow.com/a/64682293/143475
https://stackoverflow.com/a/63270092/143475
https://stackoverflow.com/a/65644566/143475

Related

How does Open Source Drools and RedHatBRMS differ. Is it not a good idea to use Open Source Drools in Production environment

Based on my understanding, all the components in RedHat BRMS can be achieved by integrating various drools components. So, is it a bad idea to use drools in Production?
Not at all. The difference is that if you pay RedHat you will have support from them if you need advice or you find any problem.
If you use the Open Source version, you will have all of the features present in the payed version (or even more), but you are basically on your own.
Hope it helps,
Along with support you will get patches on regular basis for reported issues. You wont get any patch for community release of Drools/jBPM.

Not sure about the way to approach to the IndexDB API and wrapper libraries?

I have started a crash course of IndexDB API. I have heard from the author that the API is a little bit confusing. Primarily, as we have been working with the promise pattern as this API doesn’t use this pattern. Secondary, there are different wrappers, one of them seems is from Github author’s personal library so I suppose he have created it.
However looking for a different flavor, I found this one: http://dexie.org/. Also supports the Promise pattern. See http://dexie.org/docs/Promise/Promise, http://dexie.org/docs/API-Reference#query-items . It seems “promising”.
Also I found that the IndexDB 2.0 API was created post the video time. It is already being supported since beginning of 2017. From a Mozilla developer, I found since Firefox 51 (Jan 2017) it is already there. And he wrote what’s the differences among 1 and 2 versions https://hacks.mozilla.org/2016/10/whats-new-in-indexeddb-2-0/
So my question is if at this point is better to use the wrapper libraries or to use the native IndexDB API in terms of cross-browsing and support and better practices?
It all depends on what you want to do with indexeddb -
If you are learning indexeddb for your interest or for knowledge then you should go for plain indexeddb. Learn and research as much you can, because it has too many apis and you will have to write code for every type of situation.
You want to use indexeddb in your project and dont have much time to explore indexeddb. You only want to do some database operations and release your project. In this case - you should go for indexedd library. This way you dont need to worry about indexeddb code . You will just write simple code using the library.
For instance : check out this article - https://dzone.com/articles/crud-operation-in-indexeddb-using-jsstore. How a library makes indexeddb so easy.
Hope this will help you.

Enterprise Service Bus and BPM

I am a Java professional. I have a requirement to implement Enterprise Service Bus(ESB). There are quite a few ESB providers are available in the market.I am confusing a bit among those.
Please suggest which one is the best to implement ESB and BPM. I am expecting to have an open source solution with rich documentation and easy to understand with number of examples and scenarios so that we can start from scratch and implement it without any hassle.
Yes the number of options can be confusing. It's highly depends on your use case and what you're trying to achieve. Without much context, I can only share with you the recent tutorial I wrote around Bonita (A Bpm platform) and Apache Camel (A lightweight ESB): http://community.bonitasoft.com/blog/enhance-your-bonita-applications-apache-camel
In this tutorial, I explain how to trigger new process instances on new incoming emails event.
Cheers
WSO2 has a good option with their Enterprise Integratir. This combines ESB, BPM and related functionality.
Check here for more: http://wso2.com/integration
However this is one of those questions that is purely opinion based.

ESB servicemix Vs WSO2/synapse

I am searching for the best 100% open source ESB for the following requirements, after searching I'm confused between Servicemix and WSO2/synapse
1- The requester is mobile app that requires all services to be exposed via REST (JSON objects)
2- Many back end providers (JMS, SOAP, SMTP, LDAP, ...)
3- Provide easy way and flexibility to transform and perform complex business logic
4- Security and Caching
5- Above all easy to learn, use and extend with small learning curve and good tutorials and community support
Thanks,
I think you can achieve what you want with both of these. You might even want to look at the similar Mule ESB CE which is as well open source.
However, considering you want a flexible solution that is easy to learn, but not limited, then I would go for Service Mix and deploy various Camel routes to it. Camel is, imho, probably the easies and most well documented open source integration engines out there and I really recommend it.
In the end, it's a matter of taste. WSO2/synapse has it's base in web services, and you might feel better there if you are more comfortable with XML standards (including SOAP,BPEL..) than java programming (which is sort of needed in SMX/camel).

application design: Scala + HTML5

I'd like to implement an application with Scala and HTML5. My idea was to create a "local" client-server architecture: Scala handles the calculations and generates HTML5 as a GUI.
To my mind there are two possibilities
Use a Java/Scala framework that allows embedded HTML5. SWT for example has a browser widget. JavaFX seems good, too.
Distribute the program with a server and run it in a browser on localhost.
It would probably be most convenient to require an internet connection and forget about the localhost. Unfortunately an offline mode is necessary.
Now I would like to know how to get this right:
The first option seems easier to implement but I wonder: How can I communicate with Javascript without the HTTP protocol ?
The second approach was just an idea. Have you ever done something like this ?
If you've got advice or know a good framework please go ahead.
UPDATE :
I've just had an interesting idea: Could I use nodejs to create something like a server-server architecture ?
Right now the communication between Scala and Coffescript seems like the most problematic part. I still wonder how I could initiate an update from the Scala side of the application. A HTTP Request is a nice way to exchange data. Sadly to my knowledge in "standard" Coffeescript there would be no event hook to listen to server-side HTTP messages.
I've thought about using nodejs to listen to the server-sent data. Is this a good idea ?
With regards to the second option, you may wish to investigate the Play! Framework or Lift. They automate a lot of the work required to make a web application in Scala, including handling AJAX requests.
Although I haven't tried packaging either for local use, there was an earlier Stack Exchange question about packaging Lift which might be relevant. It should be possible with Play! as well.