Abstract:
In most cases, development of Web-based systems has been ad hoc, lacking systematic approach
and quality control and assurance procedures. Hence, there is now legitimate and growing concern about
the marmer in which Web-based systems are developed, and their long-term quality and integrity. Web
engineering, an emerging new discipline, advocates a process and a systematic approach to development of
high quality Web-based systems. Testing Web applications is like a puzzle for most Black box testers
whose focus is on standalone application. This puzzling effect is due to special challenges and
opportunities posed by Web applications Testing. Web applications testing ellvirolU11t:nt is more complex
than mainll'ame, stand-alone, or typical client server applications environment. So, a failure in a Web
application might lie in the application's code, in application's compatibility with other system
components, etc. . Moreover, components of Web applications should be separated t[om third-party
components. However, if they are not separated, testers may waste their time Oil a lot of wrong components in order to manage wrong lisks. On the other hand there are two primary keys in testability visibility and
control Visibility is the ability to know what is going on in the software test. Control is the ability to
change the state or data of the software under test. Therefore, testers should develop or use tools to enhance
testability of Web application taking into consideration the tremendous opportunities provided by Web
applIcations' enviro1U11ent. One of the clitical challenges in developing Electronic Commerce systems is
the timely and tI'equent deployment of distributed software components with high quality, reliability and
availability requirements. Plmming for testability and systematic and formal testing contribute positively
towards such requirements. Testing is expected to be the recun'ent activity requiring at least 50 % of the
development process. In this work, we describe the vmious testing activities that must be undertaken dming
the electronic conm1erce system development process. We also address issues related to system and
software testability and approaches to improve it as a way to shorten the testing time and speed up the timeto-
market deployment.