Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Version History

« Previous Version 2 Current »

1 - An element is not detectable because of a WebView

Websites contain WebViews. With this type of view, the elements inside are not always updated. Consequently, it can be difficult to detect the elements of a web page.

Here is what you can do in this case:

 Solutions
  • Make sure you are using chrome 110 to be in the same conditions as our testbench

  • To click on an element, first click on a location with no element on the page with the clickByPercent function to refresh the page. For example, if there is no element in the middle of the page, you can use clickByPercent,50,50. Then, you can try to click on the expected element with the clickByText function. The clickByXY and clickByPercent functions should be avoided because they may not work on another device. However, if the solutions above do not allow you to detect the expected element, theses functions can be used.

  • To wait for an element, you can use setCompressedLayoutHierarchy,false just before the wait.

measureStart,CHRGT_contactPage
clickByText,Go to the contact page
setCompressedLayoutHierarchy,false
waitUntilText,Contact page
pause,${PAUSEAFTERLOAD}
measureStop
  • To wait for an element, if the first solution does not work, you can add the pause function between the click and the wait functions. It can help to update the elements inside a WebView.

measureStart,CHRGT_contactPage
clickByText,Go to the contact page
pause,${PAUSEAFTERLOAD}
waitUntilText,Contact page
pause,${PAUSEAFTERLOAD}
measureStop

2 - browserPrepareAndOpenForReference command does not work

This method is a bit special and is only useful for preparing the phone for measurement. This will not necessarily work on all versions of Chrome and Android.

 Case 1 : use Test Runner to set up your GDSL tests and Test Bench

If you are using your own phone to set up your GDSL tests, you can prepare Chrome manually on your phone by closing all tabs and then closing Chrome. Then you can replace the “browserPrepareAndOpenForReference” method with the “launchBrowser” method in your GDSL script. This method will allow you to make a simple chrome opening without preparation.

Be careful though, when you send your tests to the remote devices on Test Bench to obtain measurements, you will need to remember to put this 'browserPrepareAndOpenForReference' method back into your GDSL script.

 Case 2 : use Test Runner to do the measurement

If you want to do measurement with your own phone, you will probably need to install a compatible version of Chrome with all GDSL commands : chrome 110.

To change chrome version on your phone on android 10+, you can do

  • Close your Chrome on your device

  • Download the mandatory library for chrome 110 trichrome-library

  • Connect your phone to your PC

  • Open a terminal on the directory where you download the apk and enter the command (if you have difficulty, please use completion to let your terminal set the correct path to the apk)

    adb install com.google.android.trichromelibrary_110.0.5481.65-548106533_minAPI29\(arm64-v8a,armeabi-v7a\)\(nodpi\)_apkmirror.com.apk
  • Download the .apkm bundle of chrome 110 here : chrome 110

  • Unzip the .apkm file

  • Connect your phone to your PC

  • Open a terminal on the unzip directory

  • Enter the command

    adb install-multiple -r -d *.apk
  • Open chrome on check it works

  • You need to prepare your chrome to use GDSL commands

    testrunner testdslcommand -c browserReset

If the chrome 110 installation does not work, you probably have a phone with android <10 or your phone does not have a processor arm64-v8a. You can check with the command adb shell getprop ro.product.cpu.abi

On these cases, you need to download chrome 110 archive which is suitable for your device

In this tutorial, we suggest to use apkmirror. Greenspector cannot be held responsible in the event of a security problem. We can only say that apkmirror is a good alternative to playstore with a serious community. Only community member can publish on the store, you just install an apk with the same signature as your chrome (the command ‘adb install’ will detect if the apk was not signed by google)


3 - How to change chrome version to chrome 110 on local device ?

In this tutorial, we suggest to use apkmirror. Greenspector cannot be held responsible in the event of a security problem. We can only say that apkmirror is a good alternative to playstore with a serious community. Only community member can publish on the store, you just install an apk with the same signature as your chrome (the command ‘adb install’ will detect if the apk was not signed by google).

 For android 10+

To change chrome version on your phone on android 10+, you can do

  • Close your Chrome on your device

  • Download the mandatory library for chrome 110 trichrome-library

  • Connect your phone to your PC

  • Open a terminal on the directory where you download the apk and enter the command (if you have difficulty, please use completion to let your terminal set the correct path to the apk)

    adb install com.google.android.trichromelibrary_110.0.5481.65-548106533_minAPI29\(arm64-v8a,armeabi-v7a\)\(nodpi\)_apkmirror.com.apk
  • Download the .apkm bundle of chrome 110 here : chrome 110

  • Unzip the .apkm file

  • Connect your phone to your PC

  • Open a terminal on the unzip directory

  • Enter the command

adb install-multiple -r -d *.apk

if the command does not work with message adb.exe: failed to stat "*.apk": No such file or directory
You have to put each apk files in the command :

adb install-multiple -r -d base.apk split_cablev2_authenticator.apk split_chrome.apk split_config.en.apk split_config.fr.apk split_dev_ui.apk split_feedv2.apk split_image_editor.apk split_stack_unwinder.apk split_survey.apk split_test_dummy.apk split_vr.apk

  • Open chrome on check it works

  • You need to prepare your chrome to use GDSL commands

    testrunner testdslcommand -c browserReset
 For android < 10
  • Close your Chrome on your device

  • Connect your phone to your PC

  • Download the .apkm bundle of chrome 110 here : Chrome 110

  • Unzip the .apkm file

  • Open a terminal on the unzip directory

adb install-multiple -r -d *.apk
  • Open chrome on check it works

  • You need to prepare your chrome to use GDSL commands

testrunner testdslcommand -c browserReset
 For x86 emulator android 10 in linux and windows
  • Turn on your emulator

  • Please check the following command return x86

adb shell getprop ro.product.cpu.abi
  • Close your Chrome on your emulator

  • Download the mandatory library for chrome 110 : trichrome-library

  • Open a terminal on the directory where you download the apk and enter the command (if you have difficulty, please use completion to let your terminal set the correct path to the apk)

    adb install com.google.android.trichromelibrary_110.0.5481.154-548115431_minAPI29\(x86\)\(nodpi\)_apkmirror.com.apk
  • Download the .apkm bundle of chrome 110 here : Chrome 110

  • Unzip the .apkm file

  • Open a terminal on the unzip directory

  • Enter the command

    adb install-multiple -r -d *.apk
  • Open chrome on check it works

  • You need to prepare your chrome to use GDSL commands

    testrunner testdslcommand -c browserReset
 For x86_64 emulator android > 10 in linux and windows
  • Turn on your emulator

  • Please check the following command return x86_64

adb shell getprop ro.product.cpu.abi
  • Close your Chrome on your emulator

  • Download the mandatory library for chrome 110 : trichrome-library

  • Open a terminal on the directory where you download the apk and enter the command (if you have difficulty, please use completion to let your terminal set the correct path to the apk)

adb install com.google.android.trichromelibrary_110.0.5481.154-548115437_minAPI29\(x86_64,x86\)\(nodpi\)_apkmirror.com.apk
  • Download the .apkm bundle of chrome 110 here : Chrome 110

  • Unzip the .apkm file

  • Open a terminal on the unzip directory

  • Enter the command

    adb install-multiple -r -d *.apk
  • Open chrome on check it works

  • You need to prepare your chrome to use GDSL commands

    testrunner testdslcommand -c browserReset

If the chrome 110 installation does not work, please check if you use the good archive for android 10+ or android <10. If it does not work, you probably have a phone which does not have a processor arm64-v8a. You can check with the command adb shell getprop ro.product.cpu.abi

On these cases, you need to download chrome 110 archive which is suitable for your device

All archives for chrome 110


4 - Chromedriver issue on Windows

While doing website measures on Windows, chromedriver processes may stay open and accumulate after the Testrunner exited and disturb further use. You may need to kill those processes.


5 - Firefox browser is not supported for standard URL jobs on mobile

When launching a standard URL job on mobile with the Test Runner, only Chrome browser is supported. If you set Firefox browser in the job configuration file, the Test Runner may not fail with an error indicating that the browser is not supported.


6 - Website GDSL tests behavior may differ between local device and Test Bench device

When automating your user journey, sometimes a GDSL test will pass on a local device and fail on a Test Bench device or vice versa. Test results may show that there are differences in the dump, the text may be found in the Test Bench device dump and not in a local device dump.

This behavior probably comes from the fact that the local device and the Test Bench device do not have the same Chrome version. Please install chrome 110 on local device Install Chrome 110 on local device

  • No labels