Forum Discussion

shankar_r's avatar
shankar_r
Community Hero
7 years ago

Installing and Loading Script Extensions

Hello,

 

I have created Script Extension for HTML reports and I am able to install and load the Script Extension using below options mentioned in the Smartbear help.

https://support.smartbear.com/testcomplete/docs/working-with/extending/script/installing-and-uninstalling.html

 

Scenario: We have setup jenkins environment which will run every day in multiple machines. If i need to install the Script Extension then i have open all the machines and do the steps mentioned in the document. 

 

Question: Do we have any other option to load them dynamically thru command line when launching TestComplete? like, Installing plug-in/Extension thru command line.

 

Have anyone experienced on this scenario?

 

I know tristaanogre you have lot of Script Extensions in your automation project, A little background on how you setup your machines with Script Extensions would be better.

  • 1) TCX extension files are checked into source control so that they are in a standardized drive/folder hierarchy that will be common on all workstations

    2) Every machine configured to run tests, in either TestComplete or TestExecute, point Tools | Options | Engines | Script Extensions to that directory.

    3) When a new "pull" of latest source is done, the TCX is refreshed in the directory with the latest version

     

    This ensures distribution of the latest version of the script extension to all machines.  Note that step 3 needs to be done with the TestComplete/TestExecute application NOT running.  So, what we have is, for our over night runs, a batch file that pulls the latest source code done on a nightly basis a few minutes before the scheduled test run executes.

  • tristaanogre's avatar
    tristaanogre
    Esteemed Contributor

    1) TCX extension files are checked into source control so that they are in a standardized drive/folder hierarchy that will be common on all workstations

    2) Every machine configured to run tests, in either TestComplete or TestExecute, point Tools | Options | Engines | Script Extensions to that directory.

    3) When a new "pull" of latest source is done, the TCX is refreshed in the directory with the latest version

     

    This ensures distribution of the latest version of the script extension to all machines.  Note that step 3 needs to be done with the TestComplete/TestExecute application NOT running.  So, what we have is, for our over night runs, a batch file that pulls the latest source code done on a nightly basis a few minutes before the scheduled test run executes.

    • shankar_r's avatar
      shankar_r
      Community Hero

      2) Every machine configured to run tests, in either TestComplete or TestExecute, point Tools | Options | Engines | Script Extensions to that directory.

       

      So, This is needs to be done manually in all machines which are running the TestExecute/TestComplete only for first time.

      • tristaanogre's avatar
        tristaanogre
        Esteemed Contributor

        shankar_r wrote:

        2) Every machine configured to run tests, in either TestComplete or TestExecute, point Tools | Options | Engines | Script Extensions to that directory.

         

        So, This is needs to be done manually in all machines which are running the TestExecute/TestComplete only for first time.


        Correct.  It's a one time configuration.  You don't need to do it every time you edit an extension.

  • HKosova's avatar
    HKosova
    SmartBear Alumni (Retired)

    Another way is to copy the .tcx file to the <TestComplete>\Bin\Extensions\ScriptExtensions folder on the agents, provided that your Jenkins job has enough permissions to do so.