Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 1 year ago.
Improve this question
I am new to Karate and I am wondering which is a better tool for api testing, postman or karate ? Both tools are easy to use but I wonder in long term which is a better tool in terms of automation testing. My aim is to automate the api tests and run them through CI/CD pipeline jobs.
Anyone who has moved to karate from postman, could you please share your experiences on how easy was the migration, what method have you used to migrate postman collections, what benefits have you observed so far by choosing karate.
Thanks in advance.
We evaluated Postman, Karate, and a few other frameworks about three years ago when Karate was still in it's infancy. Postman did have a lot of pull just because our dev team had a very solid collection that was well maintained, but we quickly realized Postman was not scalable, and simply did not have the features necessary for an automation framework.
We will be starting api testing at my current job sometime this year, and Karate is again the most likely candidate, though we will also consider Postman and Cypress, the later mostly because we are using it for front-end. But Karate is so easy to use out-of-the-box, has BY FAR the best documentation, and real-time support of any open source framework I've used, and has outstanding integration for DB connections, GraphQl calls, Java interop, and javascript-like syntax.
I love Postman for quick exploratory testing, but for test framework and CI, I don't see how they can compete.
Started testing APIs with Postman and looked for a tool that was better for developers to share their "API knowledge" via GIT.
Came across Karate three years ago and I use it for almost every API call have to make.
Postman is a tool for non developers and for people afraid writing any kind of code.
Related
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 1 year ago.
Improve this question
intro: i'm currently taking a course at my university where we do TDD and BDD. We haven't learned anything about how to do frontend test except that we should never do BDD or TDD by testing the view layer since any changes to this layer would mess up all the tests. We've only worked in java and within the business logic layer (we've not even learned about persistence).
question(s):
I am working on an application using BDD methodologies. The BDD helped me implement the business logic. I am using hibernate ORM and mysql for the persistence. And it seems safe to assume any malfunctions in the persistence layer would also make the tests for the business logic fail. Is that correct to assume or is it also necessary to write tests for a database even though the business layer tests would fail if something is wrong in the persistence layer?
if i were to implement an API in the application layer and have a frontend written in react. Should i then do modular tests of the components and write a seperate test for the API (application layer)? the software written in the api that's using the business logic could be wrong and therefore i assume it would be a good idea also to test this part.
I've searched a lot on the internet and here and it seems like there are tools for testing frontend (jest) and selenium or postman for API tests. I assume i can reuse my feature description for all the layers but isn't there some easier way to test all layers? and is this really the best and easiest way to test an application?
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 2 years ago.
Improve this question
I've got a sample app up and running on Google Cloud Run, complete with CD from GitHub using Cloud Build et al. I would like to have different branches deploy to different environments (dev, stage prod, etc.), however the documentation doesn't hint at any sort of setup like this.
The simplest way I can think of would be to set up separate Cloud Runs with Cloud Build triggers on different branch RegExes, but I'm wondering if there is a more elegant solution as this still feels like a very "manual" method of achieving what I want.
I found one answer (How to get Cloud Run to handle multiple simultaneous deployments?) which confirms that this is a practice that has been followed, but I just want to confirm if that's indeed the best way or if there's anything better provided by GCP for this purpose.
I'm new to Google Cloud Run as well as the overall Google Cloud Platform in general.
I decided to go with separate Cloud Run instances as per my initial thoughts.
Since part of my reasoning for using Cloud Run is to modernize legacy Laravel applications, this approach should work out fine.
As mentioned by the commenters, this a subjective topic, so YMMV.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 2 years ago.
The community reviewed whether to reopen this question 1 year ago and left it closed:
Original close reason(s) were not resolved
Improve this question
I'd like to choose a framework for building and deploying AWS services and I need to have a full list of pros/cons to justify one framework over the other. Since this forum doesn't want people to just post opinions please provide references with your responses. Also, I'd like to hear from people who have deployed production solutions using any of these frameworks.
If you are looking at building Serverless applications I would select the Serverless Framework. For a couple very large reasons:
The community is a lot bigger. This may not seem like a big deal but with the community contributions constantly improving the framework itself as well as the huge quantity of community plugins to the core framework that extends the functionality out to an enormous amount, it makes it difficult to justify anything else.
Documentation quality is amazing. The Serverless Framework has a huge depth of documentation, everything from reference docs for every feature of the framework to full (and free) courses about building Serverless applications and blog posts with details on best practices. Then there is the examples repos, guides, tutorials ... its pretty awesome!
The ability to use and mix multiple cloud vendors. SAM is AWS exclusive,so if you wanted to potentially create services in other cloud vendors such as Azure or GCP, you would be stuck. But its not just the big boys either; Twilio, IBM Cloud, Cloudflare, Tencent, OpenWhisk and more are all supported.
Free monitoring and management platform. The team at Serverless Inc also produce a pretty stellar SaaS platform at dashboard.serverless.com that provides a lot of the "missing" capabilities needed for application development such as monitoring, debugging, troubleshooting, CI/CD and a bunch more!
Components makes deploying specific use cases a piece of cake. Components is one of the newest projects to come out of Serverless, Inc and promises a shift in how we build Serverless applications that is far more use case driven but also focusses a lot more on the developer experience. Something to definitely keep your eye on.
So yes, I would suggest the Serverless Framework for a lot of really compelling reasons!
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 7 years ago.
Improve this question
I am thinking of using either one of them in building our startup which is like a job portal with validation,verification and includes special features for freelancing and all.
Is meteor or sails good for using as a backend or should we go with more robust backend like Django? Will using javascript on our backend provide the ability to scale in the future moreso than Django/python?
I would really like some opinions in this matter to get to a decision.
sails.js and meteor are both great options for production.
Both frameworks have good real-time (socket.io) support, large/active communities, support a stateless backend design which make horizontal scalability possible, and are great for getting a web application spun up quickly.
sails.js - http://sailsjs.org
broad database support through the Waterline ORM (there are over a dozen supported databases)
concepts should more familiar to most node.js developers (it's built on express)
modeled after rails, grails, and django, so the paradigm is more familiar to developers with experience in those tools
extensible through npm package manager via express middleware and custom modules
meteor - https://www.meteor.com
better integration between the backend and frontend
project is VC-backed with a firmer corporate backing
extensible using custom package manager and extension system
built-in deployment system and hosting on meteor.com
Will using javascript on our backend provide the ability to scale in the future moreso than Django/python?
Probably. As with anything, you just have to do it right.
My overall opinion is that meteor is sort of cult-ish and monolithic, and that once you've chosen it, you're locked in. sails.js is built on express, so it's easy to split out functionality and integrate with other tools.
My disclaimer is that I work for Balderdash (the company that invented sails.js); but on that note, I can also tell you that millions of users are served by sails.js applications. We find that it's quite good, and our business is thriving because of the power of sails.js. I know folks who have used meteor with success as well.
I think this is a primarily opinion-based question, so you're going to receive answers from the very same "type".
But I can tell you one thing: Meteor is robust enough for production use, specially now that they hit the 1.1 release (https://www.meteor.com/blog/2015/03/31/meteor-11-microsoft-windows-mongodb-30).
Meteor is perfectly suited for startups, since it brings everything you need (and more) into a single "pack".
Check this: http://meteorpedia.com/read/Why_Meteor
So yah, that's my answer going for the Meteor side.. (not very technical, I know).
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 6 years ago.
Improve this question
Should I use google charts in production environment?
Google charts are very easy to use.
https://google-developers.appspot.com/chart/interactive/docs/quick_start
But is it recommended to be used in a production environment?
The API's are not hosted in house but called form google servers.
There is a risk of google changing them or discontinuing them.
I couldn't find any license agreement to use.
Is the data secure as the data is being sent to google servers.
Are the above real risks or am I over thinking.
I was wondering if anyone has any experience with using google API's in production. Or if anyone can give some recommendations.
The Terms of Service cover some of your questions. Basically, Google's deprecation policy says that the API will be available for 3 years following deprecation (and most of the API - namely, the Interactive Charts API - is not deprecated; the old Image Chart API is, however).
For data security, most charts in the Interactive Charts API do not send any data to Google's servers, though there are exceptions. Each chart's documentation has a Data Policy section which explains what, if any, data is sent to Google (examples: AreaCharts, which do not send any data; and GeoCharts, which may send data if you use the geocoding features). Charts in the Image Chart API do send data to Google's servers, as they generate the images server-side rather than client-side, but this API is deprecated anyway, so you probably shouldn't be using it.
The main risk with using the Visualization API in my experience is that you have (practically) no control over versioning. When the development team releases an update, everyone everywhere gets the update. Usually this is a good thing, as it brings new features, bug fixes, and performance enhancements to everyone. Occasionally, however, a new release may introduce a bug, or change the behavior or appearance of a chart in some way that is undesirable for your application. When this happens, you generally cannot roll back to the previous version. For projects that are under active development for long periods of time, this is generally an acceptable trade-off for the free (as in beer) chart API. For projects that do not have a long-term maintenance budget, this can be problematic.
If your user-base is in an area that has poor connectivity to Google's servers, having the API hosted remotely could be problematic, but in general this is not the case.
I have used it in a production environment. All the questions you have posed are very real possibilities. For use it came down to budget, the money was there to purchase a system so we went with what we could afford at the time. The direction you go really depends on budget and existing systems that might be able to achieve the same thing.