Note that when I wrote this jQuery was built into Postman. Since v4.5.0 it has been replaced by CheerioJS and Lodash, so this solution won't work with v4.5.0+.
I successfully got custom HMAC SHA256 header signing in Postman working using Pre-request script. Here's how I did it:
Per the Postman documentation, you can't set request headers directly. In the ...
I know this is an old thread, but I found it looking to resolve the same problem. The use of JQuery in Postman as suggested in one of the answers is no longer viable, it's been deprecated. But here's what I came to in the end, using Postman's current version (v4.3.9 at the time of writing this).
Postman's pre-request scripts give you access to the request ...
A key strategy for me is to convince the business of what needs to be tested where, otherwise... they'll end up directing testing everything through the UI... So the two key main points I am making to my business are the need for test automation that performs well in terms of two key factors:
Success in both speed and reliability for ...
I have had exactly the same assignment earlier this year, for APIs written in C#. Options I have (tried to) build a PoC for were:
Own framework built in C# using either RestSharp or HttpClient.
In agreement with the test lead and architecture team, we have decide to use our own C# API testing framework for the following reasons:
Ease of ...
Selenium automates browsers. That's it!
You don't need a browser to automate API testing.
Apart from the fact your second piece of code will not even be compiled and also pretty much not representative since you're not showing us how exactly you would use the information of which particular iteration in the loop is currently going on, I would not recommend to use the loops in data-driven testing approach.
Much better is to use well-know test-...
As already mentioned in your TechBeacon article, teams indeed often spend too much at the top of the test automation pyramid. In general, the pyramid is a good rule of thumb, but (as always) it depends on the project. Many systems are well designed so that the GUI is just some glue between the user and the underlying APIs, which is why such systems often don'...
As for tutorials on SoapUI, sadly the majority of them are sub-par at best and out of date. If you want to learn SoapUI the best option is likely to jump in feet first and hit the ground running.
My background is primarily API testing, with a specialty with SoapUI and Groovy, so I will try and give some hints and pointers to get you started.
SoapUI's core ...
HTTP is a synchronous protocol* so active polling is not an option. You need to wait until client receives response or request times out. There are two ways to constrain synchronous behaviour with timeout.
One is to set a timeout for receiving a response. REST-Assured uses Apache HTTP Client for which you can set http.socket.timeout and http.connection....
Estimate working load, how many test cases are there to be migrated from UI tests?
Estimate how much time you can spare in each sprint and discuss with your team leader and your fellow members regarding you want to spare some time in each sprint to work on test case migration.
Prioritize automated UI tests, there is a chance a portion of them are no longer ...
Well, an API is such a loaded term. It can be REST, SOAP, RMI, or native C++ library API, etc., so the tooling will depend on that. Particular test scenarios will depend on that as well. For instance, for REST or SOAP over HTTP you may want to check popular HTTP-related attacks like HTTP Response Splitting, etc. You may also check if API is well-defined, e.g....
The answer is similar to real world examples, both Motor Cycle (2 wheeler) and Car (4 wheeler) provides approximately same speed and can carry a person from one place to another, so why two (or in actuality more than two) types of vehicles are there and that too with further classifications (different brand designing different vehicles) i.e. because each ...
In general your answers were valid. But to create a better impression you could communicate the points which show you have deeper understanding of APIs and API testing.
You can mention about web services, APIs REST, SOAP, WSDL, XML, JSON, different methods (POST, GET, DELETE) etc so they get the perception that you have technical understanding of these ...
Do you really need to test money has been deducted? You should trust PayPal tested their end of the payment system. If not get some real credit-cards and test the full flow.
PayPal has some guides how to do the testing, it includes example of test credit-card numbers, with this you should be able to test the whole flow, except the money part.
Most of the question (and answer) isn't specific to API testing; combinatorial explosion is a problem whenever you have a function that takes multiple inputs.
So, first, you'd need to understand how the API interacts with the backend service. Is it actually doing anything, or is it just passing a call on to some other program? If so, was any testing of ...
Generally speaking I consider it a bad practice if you are using different data combinations to run UI tests.
I refer to this as data combinatorial testing.
Generally speaking I look to be sure that the UI works. That a user can tab through the fields, can pick one value from a dropdown menu, can get to the submit submit button page, etc.
I avoid ...
Creating test data via GUI will have the following impact:
test execution time will grow,
test will become 'flaky', results will not be trusted,
test will be prone to errors due to html changes,
if you use CI you will become dependent on browser,
or will have to write browser independent code,
I suggest creating the data straight in the database (if ...
If you would love to test REST API then I would recommend you to use Rest Assured which is a Java Library.
It’s better to create Page Object Model and use Testing Framework like TestNG to write tests. Along with the main library ( REST ASSURED) that you can use for testing REST API.
Below is the official guide for the same:
Defect leakage formula is defined as -
Number of Defects slipped / (Number of Defects raised - Number of
Example: In production the customer raises 21 issues, during your tests 267 Issues were reported but there were 17 invalid defects (e.g. because of wrong tests, mistake by tester, error in test environment...)
Then your Defect ...
I have tested with a simple CSV file and it indeed alters the iteration count automatically. So my suggestions for you are:
update Postman to latest version if not yet done so
double-check your CSV, is the data in a correct format? I think this is a probable cause. Can you share it?
In Postman, go to the menu Collection and select ...
Consider test pyramid. Using Pareto principle (also known as 80/20 rule), you can get 80% of benefits from testing by focusing on unit test with 20% of the effort. And 80% benefit of the remainder if you focus on API/service test.
So of course you need "some" UI-level test, 96% of effort should be lower: 80% in unit and 16% (80% of the remaining 20%) in API/...
Use the test pyramid as mentioned by Peter Masiar.
My contribution here is help answer the question of exactly how to decide the 20% and 80% figures that Peter mentions.
My approach to this is to make sure that the UI testing focuses on the functionality of the UI itself. In other words, from a user perspective the text and links are correctly displayed ...
Both approaches have advantages and disadvantages:
Separation into multiple projects means better separation of concerns. You can build your framework in a modular fashion like this. Where shared libraries are pushed up to some versioning tool like Artifactory and imported into each of the individual projects. But you will also more time managing ...
Yes, API and GUI are different from a hardware product or command line enterprise software and as such requires specialized approach and techniques.
But GUIs and APIs are usually a very thin layer above the actual business logic and features, when designing a test you you obviously check that the GUI itself (colors or location of elements for example) or ...
As of my reading-
It is nothing but a Protocol testing.
User / Client can apply any techniques to accept the project.
They will apply white box or grey box or black box for accepting the project.
So we are calling the user acceptance testing as a red box testing.
Yellow box Testing:
Yellow box testing is checking against
the warning ...
The idea of the load testing is simulating application real usage.
Imagine that each JMeter thread is a real user and design your test in this way so each JMeter's virtual user would act like a real user, for instance:
Open login page
Wait until page is loaded
Locate credentials input
Type username and password
Click login button
Wait until home page is ...
Chrome Dev Tools - Aug 2018 (they will keep changing)
Customize the tools themselves - "dots" menu on the right
Most common use is to change where the tools are "docked" (right, below, etc).
Show the source code so you can see if it is what you expect and to see what elements you can use in automation, what id's are being used, etc.
If I would approach to the goal like yours I would:
Introduce some proxy between your front-end and back-end that would log the requests to your Back-End
Run all your tests for UI
Parse the proxy logs so that I have all the endpoint calls grouped by the endpoint addresses (and possible the parameters - depends on what cost of the migration we can afford)
Make the time-out configurable by the tests. In a config-file on the test environment, a setting in a database or passed as a parameter in the API calls. Figure it out, because test-suits should be fast and automated, so there should be value in adding a features to configure it. Make it testable by automation, or get a development team todo it for you.
👍Pros of coding:
You can easily integrate your test into CI process
You can code any assertion logic you need in your tests
You can utilize any library that is suitable for your chosen coding platform
You can flexibly manage your test data
You can build whatever test report you want
👎Cons of coding:
It requires coding skills