Forum Discussion

googleid_102416's avatar
googleid_102416
Contributor
13 years ago

Cannot navigate to a page in FireFox and Chrome


Hi, I'm trying to write a very basic code - launch a browser and open a web page:




function runBrowserAndNavigate () {


  var web_browser = "iexplore";


  //var web_browser = "firefox";


  //var web_browser = "chrome";


  


  // Run browser


  if(!Sys.WaitBrowser(web_browser).Exists)


    Browsers.Item(web_browser).Run();


 


  var browser = Sys.Browser(web_browser);


  var page = browser.Page("*");


 


  page.Navigate("http://osm.org"); // rises an error in FF and Chrome


  page.Wait();


}


 


This works for IE, but dosn't work for Google Chrome and FireFox:




Google Chrome was launched. 0:26:44 Normal 


Unable to find the object Navigate("http://osm.org"). See Additional Information for details. 0:26:59 Normal 


The test run has stopped because the "Stop on Error" setting is enabled. 0:27:01 Normal 


 


 


What am I missing?


Thanks.

5 Replies

  • I ended with the function like this one:




    /**


     * Runs web browser, opens url and returns a page for further work


     */


     


    function createPage(url, web_browser) {


        // Run browser if it's not running yet


        if(!Sys.WaitBrowser(web_browser).Exists) {


            Browsers.Item(web_browser).Run();


        }


        var browser = Sys.Browser(web_browser);


        return browser.toURL(url);


    }



    function main(){

    var page = createPage("osm.org", "chrome");

    // ...

    page.parent.toURL("google.com");

    // ...

    }


  • Hi,


     


    In your example, you are calling IE's Navigate method. To call the TestComplete one, use the following script:


    function runBrowserAndNavigate () {


      //var web_browser = "iexplore";


      //var web_browser = "firefox";


      var web_browser = "chrome";


     


      // Run browser


      if(!Sys.WaitBrowser(web_browser).Exists)


        Browsers.Item(web_browser).Run();


          


      Browsers.CurrentBrowser.Navigate("http://osm.org");


    }

  • Hi, the code you've posted does not work on my end. Browsers.CurrentBrowser is null:



    ---------------------------

    TestComplete

    ---------------------------

    Microsoft JScript runtime error.



    'Browsers.CurrentBrowser' is null or not an object
  • This seems to work:



    function runBrowserAndNavigateg() {

    var web_browser = "iexplore";

    //var web_browser = "firefox";

    //var web_browser = "chrome";



    // Run browser

    if(!Sys.WaitBrowser(web_browser).Exists) Browsers.Item(web_browser).Run();

    Browsers.Item(web_browser).Navigate("http://osm.org");

    }

  • Hi,


     


    Is Chrome running when the code is being executed? If it is, that's expected. You won't start the browser if it has already launched. Thus, the CurrentBrowser property will contain null. Try using another script:


    function runBrowserAndNavigate () {


      //var web_browser = "iexplore";


      //var web_browser = "firefox";


      var web_browser = "chrome";


     


      // Run the browser


      if (Sys.WaitBrowser(web_browser).Exists)


          Sys.Browser(web_browser).BrowserWindow(0).Close();


          


      Browsers.Item(web_browser).Run();


         


      Browsers.CurrentBrowser.Navigate("http://osm.org");


    }