Entries Tagged 'Tech thoughts' ↓

API Testing - Begin with a test framework

I recently started doing a project which involves some . Since my knowledge of this domain was restricted and began to learn of lot of things as i started….. This is the first time i thought ill blog about it as i go along.

How to and framework ???

Coming from an automation addicted software testing background, when i started to study one of the things that i found out (to my delight) was that when it comes to testing API’s, there is not much that you can do by sticking to the age old manual testing routine.

This bought me to the next question, what would be the architecture of an framework? The following notes are regarding the pre-requisites of your irrespective of whether your API is written in C,JAVA etc etc…. As usual let me start with a picture:

The framework is more or less self-explanatory. The purpose of the is to hold all the configurable components and their values for a particular test run. As a follow through, your automated test cases should be represented in a ‘parse-able’ format in the . Always keep the script highly ‘configurable’.

In the case of , you would not want to test every API in every test run ( the number of API’s that are tested will dwindle as testing progressing.) Hence your should have sections which detail which all API’s are “activated” for the particular run. Based on this, the test cases should be picked up.

Since inserting the automation test case parameters into can be a tedious activity, it should be designed in such a way that the test case can be left static with a mechanism of ‘activating’ and ‘deactivating’ them.

More on designing and real experience in later posts…………………………….

If you enjoyed this post, make sure you subscribe to my RSS feed!

Related posts

Desktop apps - The Sunset???

With the advent and maturity of concepts and feature rich dev tools, the impetus to develop desktop solutions for your computing needs should be seeing a decline. I was mulling over the “problem of choice” ( Matrix fame)…… What would be the factors to consider when deciding whether an application/system should be served as a standalone installer for a desktop app OR a surf-n-use web solution. These are some of the factors that favored going online with our apps.

  1. : This is one BIG advantage where you would’nt have to create Linux, Mac and Windows distro’s for the same app. Bad news for those companies that made a neat packet out of “”.
  2. Universal Upgrade: Web applications reduce the pain of distributing patches, service packs and version updates. This needs to be done only in the centralized application server and it trickles to all users.
  3. Easy application support: This will come as a great sigh of relief to companies maintaining extensive service/ support personnel. The logic lies in the fact that a stable release of a software is done after extensive QA where trained testers try to break the code. So most support queries issues are with respect to system specific compatibility issues, missing support utilities and the problems due to OS localization etc etc etc… These are cleaned out in one sweep when you go online.
  4. Heightened security and reliablity: Service continuity is enhanced if the application servers are robust and outages will not happen on an ad-hoc basis. If the application is processor intensive then high end servers can do a better job and heighten throughput as compared to a desktop.

Will be building on this in the coming days. For the moment just could’nt resist sharing this with you….. ;-)

If you enjoyed this post, make sure you subscribe to my RSS feed!

Related posts

I became a Stumbler !!!!!

My friend Kenney recently introduced me to the concept of . This a concept where the Internet goes democratic. You as user of the internet now have the right to vote for content/ information on the internet that you think is more precise and relevant than other websites that talk of the same thing. I believe that this brings us one more step closer to harnessing the of users on the internet. This is a great place to start :

This is what you need to do to get :

  • Register at the site
  • Download the stumble toolbar for your Mozilla or IE.
  • Visit the sites you like and vote for them by pressing the “I like it” button.

You can also register for types of information that generally interests you and when you click the stumble! button on the toolbar it will fetch a random page from the interests you have registered. Trust me it makes for some cool reading. You can also invite friends to join this network and stumble on pages that your friends have voted for.

It was a really welcome sight to see stumble votes affecting google listings also. As a stumbler my mouse pointer drifts to google results that have a “stumble thumb” next to it :-)

So what are you waiting for…… “Get NOW !!!!!!”

And hey….. dont forget to vote for me on stumble ;-)

If you enjoyed this post, make sure you subscribe to my RSS feed!

Related posts

Requirement tracking in India

Recently I was brainstorming with a highly competent tester based in Bangalore, India [a rare breed out here] and we stumbled on a startling fact. gathering and tracking methods have remained largely static for a long time. The delivery models in India with respect to QA and process are reminiscent of the late 90’s.

These are some of the facts that we ascertained:

  1. The most prolific and commonly used in the Indian IT service sector is…….. “Microsoft Word”.
  2. Every stakeholder/developer/tester in a project has a personal copy of the document resident in his inbox.
  3. changes are often not centrally held/ distributed.
  4. discussions/ freeze is effected after multiple rounds of talks with the onsite customer/coordinator.

Software systems today have reached a stage of “critical complexity” where it is imperative that we hold requirements in a central repository. There core reason for no advances in this segment is because our internet non-savvy IT community is oblivious to the concepts of web2.0 and the “collaborative internet”.

The version of the internet as we have it today has moved towards distributed applications with added focus on communities,collaboration and harnessing .

The benefits this can provide to tracking are the following:

  • Use principles to build tracking tools on the “internet platform”.
  • Provide features within the app like forums [to start discussion threads], chat enabling for real time gap resolution, wikis for public bulletin boards.
  • The feature rich UI capabilities of internet based applications can provide “mind map” like interfaces for provide a structural organization for requirements.
  • This would provide the benefit of greater usability and clarity compared to “referring to section 1.1.3 (a) or 1.2.4 (b)” to track requirements.

Requirements are the most critical pieces of information in the IT sector…. Information management is a science that Internet gurus are trying to perfect and they are the forerunners. So its only logical to adopt their practices in “managing” our information rather than stick to “Pubic library model of tracking and analysis”.

If you enjoyed this post, make sure you subscribe to my RSS feed!

Related posts

Barcamp Kerala- The first

I was extended and invitation to attend and present at the first barcamp in Kerala, India. Its a great feeling to be part of this technology collaboration stride being held at technopark, Kerala. This is the first of its kind to be held in this southern state of India.

For more details and to register yourself for this event visit: Barcamp Kerala

Pass on this link/info to your colleagues/ friends out there who might be interested to be a part of this.

For insights into what the concept of barcamps are all about, you can read my fellow blogger kenneys post about the event

Looking forward to attending this event and sharing my experiences with you in future posts…..

If you enjoyed this post, make sure you subscribe to my RSS feed!

Related posts

YouTube bug??

If you enjoyed this post, make sure you subscribe to my RSS feed!

Related posts