SLIDE 32 DiJohn Innovative Consulting, Inc. www.dijohn-ic.com Test Automation Using Scripting Languages
2
- A simple development environment, and
- Use of an industry-standard language.
N NO O R RE EQ QU UI IR RE ED D L LI IC CE EN NS SI IN NG G/ /I IN NC CR RE EA AS SE ED D A AV VA AI IL LA AB BI IL LI IT TY Y This may possibly be the most significant advantage to using scripting languages for test automation. Since scripting languages are typically made available with operating systems or provided as free downloads, they are ready for use at
- anytime. Usage is, therefore, no longer limited by the number of tool licenses, which results in increased availability and a
simultaneous decrease in cost. S SI IM MP PL LE E D DE EV VE EL LO OP PM ME EN NT T E EN NV VI IR RO ON NM ME EN NT T Scripting languages typically don’t require a complex Integrated Development Environment (IDE) – a set of integrated tools for code development. This makes it easy to deal with, because you can usually develop and execute the scripts in a simple text editor (e.g. – Notepad on the Windows platform). I IN ND DU US ST TR RY Y-
ST TA AN ND DA AR RD D L LA AN NG GU UA AG GE E Scripting languages are typically industry standard languages as opposed to vendor developed derivatives. This is advantageous because there will be plenty of information to support the use of that language, including books, white papers, official and unofficial web sites, and user’s groups.
When to Use Scripting For Test Automation
The use of scripting languages for test automation can be something fun and exciting, and a great resume builder, but at the end of the day, if it’s not economical it’s not worth it. There are several indicators that may be used to signal that scripting languages are worth investigating, including one or more of the following:
- A Commercial Tool is Not an Option – If a commercial tool is not an option, then scripting is automatically the
way to go. There may be several reasons that a commercial tool is not an option; one reason may be that an
- rganization can’t afford the expensive commercial tools, or just doesn’t feel that the return on investment
justifies the cost. Another reason may simply be that the organization has no interest at all in automating any tests, and is content with having testing resources continue to perform all tests manually. For what ever reason the organization doesn’t want to purchase an expensive automated test tool, scripting provides another way of automating tests. There may be a decision to implement an official automated test effort using scripting, or if the
- rganization is uninterested in an official effort, a tester may decide to unofficially supplement some of their
manual testing efforts with automated test scripts using scripting languages.
- The Automation Scope is Small –If the automator is not very proficient in scripting languages, the amount of
effort for implementing the scripting language approach may be too great to be able to successfully conduct on large scaled automation efforts. If the scope of the automation effort is small (e.g. – small number of tests, simple functionality, etc.), it may be suited for scripting.
- Technical Resources are Proficient Scripters – When resources are proficient in scripting, it may be a little
easier for them to build and maintain an automated test framework using scripting languages, so the probability
- f success is increased regardless of the size of the automation scope.
- Automated Scripts Need Wide Concurrent Availability – Often times a project requires large numbers of
people to create or execute automated scripts, which would require multiple tool licenses. Many commercial automated test tools offer a server or floating license, but this only allows a small finite number of concurrent users of the tool. Scripting offers an alternative to this expensive option. You can either chose to use scripting language automation in lieu of purchasing an expensive automated test tool, or you may choose to use scripting language automation to supplement the automation being conducted with an automated test tool, so that fewer licenses are required. Although these indicators are useful, it is still advisable to perform a cost benefit analysis for determining whether it is more cost effective to rely solely on an expensive commercial automated test tool, or to use scripting languages. If presented with a choice between an expensive automated test tool, or using scripting languages, a cost benefit analysis comparison should be conducted. Items to consider in a cost benefit analysis include:
- Resource skill level,
- Script development costs (time and effort),