Author Archives: Haider Hussain

Week2: Software Product Testing

There are four major stages that needs to be taken to complete the cycle of software product testing. Each stage has its own importance and transition to the next stage. Software product testing helps companies and teams build a good and up-to competition product. It also helps companies and teams to stay on top of their game and make the necessary changes and developments to the product that gives the product an edge over competitive products. Here are the four major stages for software product testing:

 week2

Chart represents the flow of the four stages of software product testing.

 

  1. Product Introduction: In this stage, product will be introduced for the first time to the market and potential users. So, as a product testing team there shouldn’t be any problem or flaws left in the product because this would be the first impression of the product. Team has to check everything for the product to be a success.
  2. Product Growth: After the launch of the product. If the product becomes a success, the development process becomes faster with limited time in hand because at this stage, product is in race with other products and if you do not keep up with development and improvement of your product in minimum time your product will be gobbled down by major companies and products. So, in this stage of the product testing the team has to grow, expand and add more features to the product in order to sustain the harsh competition from the competitors.
  3. Product Maturity: Once the product makes it to this stage then it is less about the improvements of the product and more about business. At this stage of product testing, the product should be in its fullest form and be ready to face what it is built for. At this stage, team should be more focus on marketing the product and attract more clients for the product.
  4. Product Decline: At this stage, times has changed, demands have grown and more is expected. The product needs a makeover. It needs more capabilities, functionalities and look. So, the product is re-evaluated and start to make it better in order to face the new challenges of the market.

All these stages are very productive and efficient for software product testing. It will keep any company or product up-to expectations and competition in the market place.

 

For further reading of the article please visit:

http://www.softwaretestinghelp.com/how-perform-software-product-testing/

From the blog CS443 Software Quality Assurance & Testing – Computer Science World by Haider Hussain and used with permission of the author. All other rights reserved by the author.

What to Do When Chrome Drops Support for Your REST API Testing (Week5 – Oct. 21)

According to Michael Giller’s blog, published on October 5, 2016, Google has announced that it will be terminating support for apps in the Chrome browser on Windows, Mac and Linux. This announcement will affect any user interacting with REST API. I guess this is another approach by the giant tech corporation to sell more of its products by scaring consumers who are using apps like Postman, Advanced REST Client, and Boomerang in the Chrome browser. Google has given July 2017 as the last date to be fully executing this decision. What are some of the alternative options for the users who have been using Chrome browser for apps on Windows, Mac and Linux. It turns out that users have three possible options.

Frist, which is the most obvious and no brainer, but costly, is to buy Chromebook. Chromebook has Chrome OS and it is Google’s own product which will come with all these capabilities and users will not have to worry about anything. I believe, this is what Google wants too. I think Google strategy is to market its Chromebook by restricting and providing some feature strictly to Chromebook. We know from history; this is what Microsoft did back in the day when Netscape came out by providing Internet Explorer as a package with Microsoft Windows. This might not be the exact same situation, but the goals are similar.

Second option that consumer has is to move from Chrome apps to corresponding standalone app for testing REST APIs. Right now, Postman is the only one who provides a standalone app for Mac and Windows, but Advanced REST Client has promised to publish its own standalone version soon. So, this can be another possible options for the consumers who are depending on Chrome apps for testing their REST APIs. By going with this option you might have to go through some hassles and that would be that previously everything that were handled by Chrome your standalone app has to provide all those functionalities. For example, the standalone app has to manage its own authentication and connectivity, Proxy auto-detection, web form authentication, cookie handling, support for IPv6 and HTTP 2.0 protocols.

Third option is to switch to another API testing. There are plenty of free and open source tool like SoapUI and Ready! API both of them are great alternatives to Chrome apps that can increase your API testing experience. Here are some of benefits you can get from SoapUI:

  • TestCases in SoapUI (same as Collections in Postman) allow you to string together calls for REST APIs, JDBC and SOAP. This will let you validate the backend data and any SOAP to REST migrations
  • Convert your SoapUI TestCases to a load test in a few clicks

Set up security tests against your API

  • Easily mock up / stub out / virtualize an API to get particular responses or start API interactions before a real API is available
  • SoapUI is available across all operating systems and your projects can be shared and run in any major operating system (Giller)

These functionalities can be even taken one step further by adapting Ready! API. This platform has more functionality and tools than SoapUI. Here are some of the extra tools that Ready! API includes:

  • Configuring your tests against external data sources
  • Advanced reporting
  • Load testing, security testing, and service virtualization
  • Professional support and other enterprise features (Giller)

Google’s decision of limiting Chrome apps functionality to Chrome OS is an inconvenience for many users who are using REST APIs and Chrome apps for a long time. It will not be easy to make a quick adaption to another API or tool, but the good news is that we have alternative options that are in some cases better and free. We should definitely at least consider those options and if possible adopt them.

 

For actual article read please visit:

What To Do When Chrome Drops Support For Your REST API Testing

 

 


From the blog CS443 Software Quality Assurance & Testing – Computer Science World by Haider Hussain and used with permission of the author. All other rights reserved by the author.

Mutation Testing

Recently, I watched this video on a blog title “From Junit to Mutation – Testing”. The reason why I got interested in this post was because this was related to what I’m working with these days: Java and junit testing.  This video is based on mutation testing. In this post, I’m not going to talk about how mutation testing works and what is the procedure of applying mutation testing to test your code, but rather I will be talking about the purpose and importance of mutation testing.

Mutation testing is an add on to normal junit testing. In order to use mutation testing you have to have at least one test of junit testing. So, without junit testing mutation testing is not effective. You can have numerous kinds of mutations in source code for example value mutation, decision mutation or statement mutation. Mutation testing is structural testing method that help you how to find good test. The purpose of mutation testing is to check for possible mutants in the code and clean it up. There are three important goals of mutation testing: first, mutation test leads to cleaner code. Second, Mutation testing lead to small modules as a result to shorter mutation runtime. Third, mutation testing helps you find useless code and gives you an opportunity to rethink that part of your code; and change it to more productive and efficient code.

 

Here is reference for people who might be interested:

From jUnit to Mutation-Testing

Here are some more interesting software testing links

Software Testing Magazine

http://www.codesimplicity.com/

http://www.hanselman.com/blog/

http://www.webappers.com/

 

 


From the blog CS@Worcester – Computer Science World by Haider Hussain and used with permission of the author. All other rights reserved by the author.

Introduction

Hi,

My name is Haider Hussain. I’m a CS major at Worcester State University and I’m really excited to post my first ever blog!!!

From the blog CS@Worcester – Computer Science World by Haider Hussain and used with permission of the author. All other rights reserved by the author.