Archive

Archive for July 7, 2008

Black box/White box testing

July 7, 2008 Rite$h 1 comment

I’ve have been programming with different languages since my college days, and testing has played a very important role in any software I’ve developed. Without proper testing, there is surely a large number of bugs left behind in the code, and this will eventually mess up the whole software when being implemented.

2 kinds of testing are usually performed: black box and white box testing, and sometimes, people tend to mix up these two. So here’s a brief explanation of the two.

Black-box and white-box are test design methods. Black-box test design treats the system as a “black-box”, so it doesn’t explicitly use knowledge of the internal structure. Black-box test design is usually described as focusing on testing functional requirements. Synonyms for black-box include: behavioral, functional, opaque-box, and closed-box. White-box test design allows one to peek inside the “box”,and it focuses specifically on using internal knowledge of the software to guide the selection of test data. Synonyms for white-box include: structural, glass-box and clear-box.

While black-box and white-box are terms that are still in popular use, many people prefer the terms “behavioral” and “structural”. Behavioral test design is slightly different from black-box test design because the use of internal knowledge isn’t strictly forbidden, but it’s still discouraged. In practice, it hasn’t proven useful to use a single test design method. One has to use a mixture of different methods so that they aren’t hindered by the limitations of a particular one. Some call this “gray-box” or “translucent-box” test design, but others wish we’d stop talking about boxes altogether.

It is important to understand that these methods are used during the test design phase, and their influence is hard to see in the tests once they’re implemented. Note that any level of testing (unit testing, system testing, etc.) can use any test design methods. Unit testing is usually associated with structural test design, but this is because testers usually don’t have well-defined requirements at the unit level to validate.

Drupal Open-Source Software

July 7, 2008 Rite$h 1 comment

Drupal

Home page of a default Drupal installation (with a Lorem Ipsum article).
Latest release 6.2 / April 9, 2008 (2008-04-09); 89 days ago
Written in PHP
OS Cross-platform
Genre Content management framework, Content management system, Community and Blog software
License GPL
Website drupal.org

Drupal is a free software package that allows an individual or a community of users to easily publish, manage and organize a wide variety of content on a website. Tens of thousands of people and organizations are using Drupal to power scores of different web sites, including

  • Community web portals
  • Discussion sites
  • Corporate web sites
  • Intranet applications
  • Personal web sites or blogs
  • Aficionado sites
  • E-commerce applications
  • Resource directories
  • Social Networking sites

Drupal is sometimes described as a “Content Management Framework” as its capabilities extend from content management to enabling a wide range of services and transactions. Although Drupal does offer a sophisticated programming interface, basic web site installation and administration can be accomplished with no programming.

Drupal runs in many environments, including Windows, Mac OS X, Linux, FreeBSD, OpenBSD, Solaris 10, OpenSolaris and any platform that supports either the Apache (version 1.3+), or IIS (version IIS5+) Web server and the PHP language (version 4.3.3+). Drupal requires a database such as MySQL or PostgreSQL to store content and settings.

The color editor being used to adjust the

The color editor being used to adjust the “Garland” core theme

Drupal is ready to go from the moment you download it. It even has an easy-to-use web installer! The built-in functionality, combined with dozens of freely available add-on modules, will enable features such as:

* Content Management Systems
* Blogs
* Collaborative authoring environments
* Forums
* Peer-to-peer networking
* Newsletters
* Podcasting
* Picture galleries
* File uploads and downloads

and much more.

Drupal is open-source software distributed under the GPL (“GNU General Public License”) and is maintained and developed by a community of thousands of users and developers.