Wednesday 20 March 2019

What is Software Testing

What is Software Testing?


Software Testing is the process of identifying the correctness and quality of software program. The purpose is to check whether the software satisfies the specific requirements, needs and expectations of the customer. In other words, testing is executing a system or application in order to find software bugs, defects or errors. The job of testing is to find out the reasons of application failures so that they can be corrected according to requirements.


Example:
Car manufacturer tests the car for maximum speed, fuel efficiency and safety from crash.These test later become the part of advertising strategy for car sales.


Developing a new software can be much more difficult than you could ever imagine. After all, you’ll want to make sure that everything is absolutely perfect from the get go. If you do not perform an adequate amount of testing, there is a good chance that your software is going to be released with major flaws and glitches. Software testing is more difficult than you might believe. Within this basic guide, you’re going to find suggestions for ensuring your software is tested thoroughly before it is released. Developing a new software can be much more difficult than you could ever imagine. After all, you’ll want to make sure that everything is absolutely perfect from the get go. If you do not perform an adequate amount of testing, there is a good chance that your software is going to be released with major flaws and glitches. Software testing is more difficult than you might believe. Within this basic guide, you’re going to find suggestions for ensuring your software is tested thoroughly before it is released.


The Basics of Software Testing


First and foremost, you should figure out precisely what software testing is all about. It is nothing more than a process that should be followed to analyze the software’s effectiveness. The software testing phase will give you the opportunity to evaluate your software and determine whether or not it will satisfy the end user. During this phase, you will be able to identify flaws in the coding. Then, you’ll be able to take steps to ensure that your software is perfected.


Importance Of Software Testing


When it comes down to it, software testing is far more important than you could ever imagine. If you’re not testing your software, there is a good chance that things are going to go awry in the near future. Your software will have flaws and that will gain your company a bad reputation. After all, nobody trusts a company that puts out software full of flaws. Releasing an unstable product could encourage customers to switch to a new program all together. Fixing errors before the software is launched is the best way to limit the costs too.Truly, it is in your company’s best interest to test the software thoroughly. Your company’s reputation and future really depend on it.


Classic Examples Of Software Testing


The truth of the matter is that all companies are prone to software bugs. In fact, some of the most credible and well-respected companies have run into serious problems of their own. Take NASA as an example. The company’s Mars Climate Orbiter crashed because it went too low too fast. In the end, it was discovered that the agency had utilized non-metric units. Unfortunately, the software needed metric units. That simple lapse cost the company $125 million!It is hard not to remember the Y2K bug. If you remember back during the end of 1999, everyone was frightened that their computers would malfunction when it turned 2000. The bug was incredibly simple. The developer decided that it was a good idea to store years as two digits. Thankfully, the issue was ultimately fixed, but not before billions of dollars were wasted for companies in the software industry. Even those providing essay help online were forced to adjust. Suffice to say, the Y2K bug was one of the most expensive ever.


Y2K Bug – Billions of dollars


Mars Climate Orbiter – $125 million


The Perks Of Software Testing


At the end of the day, there are tons of perks associated with thorough software testing. Anyone who refuses to test their software in a comprehensive manner is going to regret it in the future. Software defects cost companies billions and billions of dollars each and every year. It is estimated that the costs could be reduced by as much as one third by implementing better software testing procedures. By testing thoroughly, it will be possible to find and fix mistakes during the development phase. It is also possible to reduce maintenance costs through software testing.


Software testing enables your company to know for certain that you’ve delivered the best software to your clients. That can make a huge difference in the long run.


Roles And Responsibilities Of A Tester


Many people are not completely aware of the roles and responsibilities of a software tester. Below, you’ll learn a great deal more about these roles and responsibilities.• Analyzing the SRS, System Requirement Specifications, and understanding the necessities


Determining an estimation for the testing


Preparing or understanding the test plan


Putting together test cases


Assembling test data


Testing and finding defects in the software


Reporting the defects immediately to make it easier for the developer to fix


Testing again after the initial problem has been fixed


Carrying out regression testing


Offering suggestions for improving SDLC processes


Delivering support to customers testing the software


Partaking in the implementation of the software


Providing support after the implementation is completed


The importance of software testing is immense. This is why more and more companies will continue to spend more money on software testing. In fact, it could soon become of the greatest expense that any technology company will incur. Nevertheless, it is also true that the costs will be well worth it in the long run.


Ways of Software Testing


Manual Testing: Test Cases executed manually. Learn More


Automation Testing: Testing performed with the help of automation tools.


Types Of Testing


There are several different types of software testing. To ensure that all errors are identified, it may be essential to utilize a couple of different methods. Below, you will learn more about the different types.


White Box Testing: This type of testing requires the test to understand the software’ implementation and code. Then, they’ll attempt to analyze the logic of that code. In most cases, the developer will take part in white box testing.


Black Box Testing: Black box testing looks at things from the end user’s perspective. This type of testing is carried out to determine how functional the software is and whether or not it is going to meet the client’s requirements. To ensure that this testing is carried out correctly, it is pertinent to make sure that the user does not know how the software is supposed to work internally.


User Acceptance Testing: This type of testing is pretty straightforward. It is performed by the end user right before the product is actually released to the public. This is often done during the beta-testing stage. Be sure to get as many people involved in this testing as possible.


GUI Testing: Finally, you’ll also want to take advantage of GUI testing. This will ensure that the look and feel of the software will satisfy the user. Again, it is pertinent to utilize all types of testing to ensure that the software is up to par.


End To End Testing: End to end testing is another necessity. It is very similar to system testing, but there are a few differences. End to end testing will analyze the software from the starting line to the finish line to ensure that each area is working appropriately. During this phase, an environment that resembles a real time environment will be used. It is also pertinent to ensure that the software is syncing with the database correctly.


Regression Testing: Regression testing should always be carried out after flaws and bugs have been corrected. This type of testing ensures that previous fixes were adequate and that they did not cause any further problems.

Monday 15 December 2014

For The Holidays, Google Breaks Its No Updates Rules, Gives Out Fresh Penguin Updates Google has been actively pushing Penguin refreshes out; we documented Penguin 3.1, 3.2, 3.3 & 3.4.


Since Google’s “Florida” Update of November 2003, the search engine has kept to an unofficial promise not to mess with its ranking algorithm during the holiday season. That’s changed this year with a flurry of Penguin Updates.
Penguin is Google’s filter to fight spam that gets past its regular spam fighting defenses. It is used periodically, and when sites are hit by it, they retain a massive penalty until they clean up their spam problems. Then they have to wait until the next time the Penguin filter is run. If Google’s filter likes what it sees, the sites have their penalties lifted.
Publishers put in the Penguin penalty box by the Penguin 2 update in 2013 had to wait a full year until Penguin 3 was released last October, for a chance at escaping. But since then, there have been at least three further Penguin updates by the way Search Engine Land counts. And most important, these have happened from Thanksgiving onward — violating the “no updates during the holiday shopping season” rule.
Again, on multiple occasions, Google has said it tries to avoid updates during holidays, such as in 2011 and 2013.


But there’s no question that many people who were hit by Penguin 3.0 saw changes on Thanksgiving Day. Since then, there have been three other major (in our opinion) changes, this Saturday, then last Friday and last Tuesday.
Google called the Thanksgiving Update part of the Penguin 3.0 rollout, suggesting that this was part of the process that was still continuing. However, updates rarely take so long — in this case six weeks — to launch. And they rarely cause fluctuations toward the end of a rollout. That’s usually the hallmark of a change to the filter, of a new update happening.
That’s why we’re giving all of these point numbers. We’re also trying to get Google to confirm the last two and will update, if we hear. Meanwhile, here’s the current Penguin Update schedule:

  • Penguin 1.0 on April 24, 2012 (impacting ~3.1% of queries)
  • Penguin 1.1 on May 26, 2012 (impacting less than 0.1%)
  • Penguin 1.2 on October 5, 2012 (impacting ~0.3% of queries)
  • Penguin 2.0 on May 22, 2013 (impacting 2.3% of queries)
  • Penguin 2.1 on Oct. 4, 2013 (impacting around 1% of queries)
  • Penguin 3.0 on October 17, 2014 (impacting around 1% of queries)
  • Penguin 3.1 on November 27, 2014 (confirmed by Google, no impact given, Google considers part of Penguin 3.0)
  • Penguin 3.2 on December 2, 2014 (not confirmed by Google but based on publisher reports)
  • Penguin 3.3 on December 5, 2014 (not confirmed by Google but based on publisher reports)
  • Penguin 3.4 on December 6, 2014 (not confirmed by Google but based on publisher reports)