Practical Recommendations For Automated Testing


Published on

Published in: Technology, Business
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Practical Recommendations For Automated Testing

  2. 2. What is automated testing?<br />Software Testing is an empirical investigation conducted to provide stakeholders with information about the quality of the product or service under test, with respect to the context in which it is intended to operate. <br />Automated testing is its component part. It uses software to verify the implementation of tests, which in most cases helps to reduce test time and simplify the process. <br />
  3. 3. When to start automated testing to benefit the project?<br />Is it possible?<br />There is a system to be automated.<br />There is a test plan.<br />There are written test cases for manual testing.<br />There is a tool for automated testing.<br />Is it beneficial?<br />The real value of introducing automated testing has been calculated.<br />There is a need for automated testing (customer requirements or the project state).<br />
  4. 4. The main advantages of automated testing<br />The possibility of continuous / cyclic performance of tests.<br />Strict sequence of steps performed.<br />The increase of productivity in comparison with manual testing.<br />Automation of long sequences.<br />Automation of operations requiring heavy computation.<br />
  5. 5. The main disadvantages of automated testing<br />It takes a long time to create scripts (not always justified).<br />The need for ongoing support (update) tests.<br />Tests carry out the programmed sequence of actions, they do not have intelligence.<br />
  6. 6. Comparison of automated testing tools<br />
  7. 7. Creation of infrastructure. Choice of data storage location.<br />The first step is to develop the infrastructure for further development of tests. <br />One of the best methods is to store information on a network drive. Positive aspects of this method: <br />Scripts are available from anywhere on the network.<br />If needed, access to scripts is available to any user.<br />No need to adjust paths for the project when you open it from any computer.<br />Example of infrastructure creation:<br />Place Folder‘X’ on the company’s &apos;FileServer’ ileserverProjectsProjectNameAutomation.<br />Map Network Drive &apos;Z&apos; referring to this folder.<br />
  8. 8. Determining the structure of data storage<br />LIB - Library Function RA - Reusable Actions BL - Business Level GL - GUI Development RS - Script restoration DOC - Documentation DAT - Data (xml, xsl) SETTING - Files TEST - Tests RES - Results <br />REP - Repository objects <br />ENV - Variables <br />
  9. 9. Determining the requirements for test code registration<br />*****************************************************************************************************************<br />‘Author : RevkoSA<br />‘Date Creation : 10.03.09<br />‘Version : 9.0<br />‘Description : Brief description<br />‘Input parameter : Name: Cod, Type: Int, Description.<br />‘Out parameter : Name: Cod, Type: Int, Description.<br />‘Addins : Web, ActiveX<br />‘Modification : &lt;n By &lt;name&gt;, Date: &lt;dd-mm-yyyy&gt; Description<br />*****************************************************************************************************************<br />Code<br />………………………..<br />Description of the testsignificantly simplifies working with it. <br />
  10. 10. Basic rules of OO Testing<br />Data Layer<br />Test Layer<br />Functional Layer<br />Business Layer <br />GUI Layer<br /> To create tests, the application under test should be divided into 3 main layers: <br />Test Layer <br />Business Layer  <br />GUI Layer  2 additional layers are introduced: <br />Data  Layer <br />Functional  Layer<br />
  11. 11. GUI Layer<br />Data Layer<br />Test Layer<br />Functional Layer<br />Business Layer <br />GUI Layer<br />Each GUI &quot;module&quot; describes a set of graphical objects of a window / page.<br />Each module handles all the methods for the current set of objects, namely: data acquisition, data validation, data entry.<br />
  12. 12. Business Layer<br />Data Layer<br />Test Layer<br />Functional Layer<br />Business Layer <br />GUI Layer<br />Business Layer describes individual business processes.<br />Modules of Business Layer can apply to multiple GUI modules. <br />Business Layer acts as a controller for GUI actions.<br />A business module can never call another business module.<br />
  13. 13. Test Layer<br />Test Layer<br />Data Layer<br />Functional Layer<br />Business Layer <br />GUI Layer<br />Test Layer is finite and contains a sequence of scripts from the Business Layer. <br />Each module of Test Layer is a full test.<br />Each module has a unique name. The module name must meet generally accepted standards for naming the classes / variables (for example &apos;AddNewCustomer&apos;).<br />
  14. 14. Functional Layer<br />Functional Layer<br />Data Layer<br />Test Layer<br />Business Layer <br />GUI Layer<br />This is a set of internal and external procedures called in modules of Test and Business Layers.<br />
  15. 15. Data Layer<br />Test Layer<br />Functional Layer<br />Data Layer<br />Business Layer <br />GUI Layer<br />This is general or specific information (variables, parameters, constants, etc.) used to perform tests. <br />A good practice is to store test data in external files. <br />
  16. 16. Example<br />The color of modules corresponds to the appropriate layer.<br />Start<br />Enter Name<br /> Is page opened?<br />Yes<br />External data storage<br />Click Enter<br />Access<br /> Enter Password<br />Yes<br />No<br />No<br />Result = R3<br />Result = R1<br />Result = R2<br />Record a result<br />End<br />