Showing posts with label performance software testing. Show all posts
Showing posts with label performance software testing. Show all posts

Tuesday, 6 October 2015

Penetration Testing: Should We Do It?

Before getting to whether we should or should not do penetration testing, we should have a fair idea of what penetration testing actually is. Most often penetration testing is confused with the likes of “vulnerability scan”, “compliance audit” or “security assessment”, but in reality it is a world apart from the above tests. Penetration testing is the type of tests which not only brings forth the vulnerabilities of developed software but at the same time, exploits these vulnerabilities to show the extent of damage that may be caused due to these flaws.

automated testing practice, certified QA/Testing, qtp automation testing, outsource software testing, outsourcing software testing, performance software testing, qa and software testing, qa and testing servicesPenetration testing may look like automated testing practice and can be conducted with the help of the automated tools available in the market, but the core of the test lies in the hands of the individual testers or the testing teams which pushes the detected short comings to its end limits. Although the highly precise automated tools are well capable of testing your software, they were made by human and the unique human mind may conjure newer techniques of penetrating your software which makes manual tests a vital part of penetration testing. The main aim of penetration testing is to detect the real world attacks that the software may face due to the pertaining security breaches that are available. It fixes a target and attacks it with various vectors to explore the probable chances of attacks that may occur.

Penetration testing is important for a particular type of software due to the following factors that gets determined by the testing procedure.

1:: It gives the developers a reality check about the feasibility of the vector sets that attack a said target.

2:: It helps in the determination of high risk vulnerabilities which occurs as a result of integration of several low risk vulnerabilities, which occur in a particular sequence.

3:: There are certain vulnerabilities which do not get detected without automated testing procedures and applications which scan the vulnerabilities of the software being tested.

4:: It helps in assessment of the magnitude of risk that may be inflicted up on the business or the software due to attacks that are successful.

5:: It helps in determining the ability of the network defenders in detecting and preventing the various attacks that may be brought up on the software.

6:: It proves why it is important to pay attention to and invest more in security personnel and technology to C-level management, investors, and customers for risk management purpose.

7:: It shows why the Payment Card Industry Data Security Standard (PCI DSS) requires both on-going penetration testing (after any system changes) as well as yearly testing.

8:: Penetration testing is essential in determining the validation of the newly engaged security system over the incumbent one. Along with forensic results, penetration testing recreates the attacking vectors in order to check if the system is prone to further breach or is perfectly capable of defending itself against further attacks (both the existing and new kinds).

So, now you see the various aspects which can be resolved with the help of the penetration testing issues. However, the true worth of the test depends on the criteria or purpose of the software that has been developed and the organization using it. It is for you to judge (taking the various purpose of your software into consideration) as to which kind of penetration testing you need to perform on your software. In case of low security software you may want to utilize the basic tests which are time saving and cost effective, but in case of high security software, you may want to avail the pro penetration testing to completely secure your software.

Mindfire Solutions has the largest
certified QA/Testing team in India and has been continuously delighting customers over the past decade with bug-free code. If you are interested to hire an experienced QA team for ensuring your codes are clean, drop in a mail with your requirements to sales at Mindfire Solutions dot com.

Monday, 3 June 2013

What should your Testing Checklist Contain?

Before we make our websites public we must get things right. I have jot down a few points in my checklist to keep in mind a website must have before it is published to the web. Any site more or less must be usable and attractive and should explain its presence as well. Common problems that designers face by addressing their own sites in a Usability checklist of sorts. We work on many things like interacting with requirements of projects with clients, designing prototypes, coding, programming and testing – there’s a lot to keep track of and a lot to make sure gets done for the completion of a successful project.

Points to remember for a Testing Checklist:
  • ID: is the identity of the site, it is usually found at the top left of a page right next to navigation of any kind. It’s also very important that the ID links back to the home page of the site, or at least add a “Home” link in the navigation on sub pages of a site.
  • Page Name: is as important as the Site ID, the Name of any page being browsed needs to be made very clear to the user. It must define the page content or what the page wants to narrate. It must be framing the content unique to that page, prominently placed and styled to show that it is indeed the page heading. The Page Name is often the largest text on the page which clearly emphasizes its importance.If the name of a page matches the text linking to the page, a user will have no trouble identifying what page they are on.
  • Navigation: is a must for a site, and it must be constant throughout all the pages. So that users can quickly browse through whatever information at a glance without any usability issue. There are two types of navigation primary and secondary ones.
  • Primary Navigation: contains the parent pages of the site, main parts of the site. It is a top level navigation, explains to the user what the main sections of the site are and helps them get to those sections. Usually the Primary Navigation is a part of a site's global navigation.
  • Secondary Navigation: divides primary navigation into subsections. Tertiary Navigation divides those subsections into even more sections and so on. Structure your navigation by keeping it simple in all the pages of the site. So that people can easily run around the sub-menus and main menus.
  • Utilities: are parts of your site that don't really get connected to the primary sections of your site. Examples of utilities include: About us, Contact Us, Privacy Policy, Terms of Use, etc. Be sure to include the most important ones for your site in a place where your viewers will easily find them, but don’t make your navigation too crowded by including lots of utility navigation links.
  • Navigation by Search: There are users who don't have time and search for the pages which they need to focus on so they directly search for those pages only which they need. It is the second form of navigation pretty much every site should have is navigated by searching. Some users prefer browsing, some prefer searching, so it’s usually wise to include both.
  • Current Location: We must highlight the buttons we are currently working on though a nice page title isn’t quite enough to tell a viewer where they are on a website. So that users are aware of where they are in relation to everything else.Signs all over large airports that clearly mark your location as well as locations of all the other important places.
  • Highlighting: In many ways a website is like a large airport. The viewer doesn’t really know how big the site is and without some sort of grounding a user will have a tough time placing themselves on the map. Some sites highlight the section of a site a user is about to explain to them where they are, while other sites may use breadcrumb navigation or other means to show the viewer where they are on the site. Perhaps one is more useful than the other in certain situations, but the point is a site should somehow always show the user where they are in relation to everything else.
  • Tagline: Taglines are a great way to explain the purpose of a site to a user quickly. They are useful because it gets the messages across. It’s just a small, well crafted summary about your site that’s shown right next to the Site ID, usually no more than a few words. Taglines are not mottos which describe the motivation or intention, but instead descriptions that convey the point of something. They are critical because people scan websites, especially first time visitors who are just beginning to understand your company.
  • Clear Visual Page: We must not forget the fact that content is the king of any website. It should be clear and precise. Content on a page isn’t something to be taken lightly. Newspapers as a classic example of how a content hierarchy should appear online. Well constructed pages using clear headings to organize content and subheadings to make that content easier to read and appear. User should not get lost inside page, content need to be relevant up to date and well organized and should be written uniquely for each page of your website and should be written as if you are talking to the customers.
A very good website must engage the customers spend more time on their pages engages the readers, increase search engine rankings and traffic and promotes the likelihood of quality links from other sites. For a successful website it must attract both the visitors and search engines. Testing plays a critical role in the development of any web site and its long-term maintenance. While smaller web sites—especially those with more limited budgets—may not need to follow the formal testing procedures that are required for large-scale, commercial web sites, every site needs to be thoroughly tested to ensure that it’s error-free, user-friendly, accessible and standards compliant.

The Testing checklist above will help you test your site both during development and after. We must crib for a very good website liked by all and gets more demanding by them. All information should be up-to-date, with new technology being used and new techniques. Planning, Design/Layout, Usability/Accessibility, Content, Website Optimization/Standards and Search Engine Optimization/Marketing these play a vital role in a site's success. If we are alert in these areas while developing our own site, then nothing can beat us from being successful and more wanting among the professional and novice users. So if you are looking to hire offshore software testing partners, make sure they follow these testing checklists.

We provide web application testing services. If you would like to know more about our expert software testers, please get in touch with us at Mindfire Solutions.