cancel
Showing results for 
Search instead for 
Did you mean: 

How to create Frame work and How to call all functions in one main?

SOLVED
mamatahegde
New Contributor

How to create Frame work and How to call all functions in one main?

We started using Test complete but not very clear on how to create a framework. Went through the Training materials available, but couldn’t understand. Could you please help us on below  questions: 

 

  1. 1. How to design a framework?
  2. 2. As of now our QA team created separate scripts for all function/features and all the scripts contains “main “, wondering is it possible to call all that functions in One “Main” if so how can we link back to all the functions?

Appreciate your help 

 

Thanks

Mamata

 

 

1 ACCEPTED SOLUTION

Accepted Solutions
BenoitB
Community Hero

Re: How to create Frame work and How to call all functions in one main?

1.1 How to design a framework.

This is a tough one and can't be fully explained in forum message, need a real worksop because depends a lot of you, your goal, your team, your business, ..

But in a quick guidance view, below my way of doing :

- Have technical object to manage things not related to business/TC (e.g. Services, Cmd, System, DB, ..).

- Have one object dedicated to one app;

        - Build this object as OOP as you can

        - Build it with at least 3 layers; base function not linked to business, base business function and complex business function.

       - Think about useful properties (e.g. Performance or Functiunal exec mode, log level, base path, ..)

       - Use documentation framework (i use jsdoc style comments and a tweaked jsdoc module of nodejs)

       - Include self test in your object

 

2.2 Usage

Several techniques,  pseudo-class, closure, useunit, modules ...  depends again of multiples things.

Personnally i use a closure object method and 2 units (one for global keys mappings/variables, one for business object/methods). And the call from tests cases is made by //USEUNIT

Un sourire et ça repart

View solution in original post

2 REPLIES 2
BenoitB
Community Hero

Re: How to create Frame work and How to call all functions in one main?

1.1 How to design a framework.

This is a tough one and can't be fully explained in forum message, need a real worksop because depends a lot of you, your goal, your team, your business, ..

But in a quick guidance view, below my way of doing :

- Have technical object to manage things not related to business/TC (e.g. Services, Cmd, System, DB, ..).

- Have one object dedicated to one app;

        - Build this object as OOP as you can

        - Build it with at least 3 layers; base function not linked to business, base business function and complex business function.

       - Think about useful properties (e.g. Performance or Functiunal exec mode, log level, base path, ..)

       - Use documentation framework (i use jsdoc style comments and a tweaked jsdoc module of nodejs)

       - Include self test in your object

 

2.2 Usage

Several techniques,  pseudo-class, closure, useunit, modules ...  depends again of multiples things.

Personnally i use a closure object method and 2 units (one for global keys mappings/variables, one for business object/methods). And the call from tests cases is made by //USEUNIT

Un sourire et ça repart

View solution in original post

jkrolczy
Frequent Contributor

Re: How to create Frame work and How to call all functions in one main?

Is this for a Browser based app ?  
You want to do Key word or Script based fwk?

 

Think of your framework as pieces of a puzzle (pieces of functionality)

i.e.
  function to start up browser and login

  per web page you are on - functions for actions you want to do here

     i.e  fill in a text box, grab a value, click a button, verify a page label

 

Object Spy comes in handy here to know how to find your web elements

You need to create some finder functions 

 

Also be sure with your app using Object Spy that your developerd have ID'd your web elements

appropriately to help make automation easier for you on creating functions.

 

Web element fields that are helpful to find and element are:

contentText

idStr

ObjectType

ObjectIdentifer

className

 

Static IDs are better than dynamic ones that change on you as you navigate around.

(Wildcards are useful '*')

 

Once you have your various code modules,

then per a test script put the pieces together:

 

You Main() in my sense is what I call my test script name

function testcase1234()

{

  function to start up browser and log in

  function to be sure web page opened

  function to obtain my page Object for use with my functions

  functions dealing with web page you are on

  .   Click a button

  .   Check a value

  .   Set a radio button

  .   etc.

  function to logout of web page

  function to close browser 

}

 

Eventually you would have a collection scripts that you can then setup a package\group in Test Items to run.

These could be Smokes, Regression, etc.

 

There is so much flexibility here when creating a framework with TestComplete and what you can do per you vision of automation and what you are trying to test.

 

 

JamesK
New Here?
Join us and watch the welcome video:
Announcements
Top Kudoed Authors