Skip to content

Squish

This is where all questions related to Squish belong

44 Topics 121 Posts
QtWS25 Call for Papers
  • Unable to pick objects

    Unsolved
    2
    0 Votes
    2 Posts
    72 Views
    JakubTopolskiJ

    Hi Barak,
    I hope you were able to solve the issue by now. Just in case you are still struggling, I would need to know a bit more about your setup, the Squish package you are using, and the Qt libraries used by your application.

    First of all, you need to ensure that you are using a Squish package that is compatible your your application:
    https://doc.qt.io/squish/installing-from-binary-packages.html#choosing-the-correct-squish-package

    If you think that you choose the right one but the problem still occurs, please share the squishserver logs generated after you start the application under test via Squish.

  • Squish not connecting to Application Linux

    Unsolved
    3
    0 Votes
    3 Posts
    197 Views
    L

    Hi Axel,

    Thank you for your reply.

    I checked my Qt packages, and libQt5Widgets is indeed installed, but the issue persists. I decided to reinstall my environment, including qtcreator-8.0.2 (Qt version 5.15.0 (gcc_64)) and squish-for-qt-8.0.0.

    Now, Squish works within QtCreator, meaning that it still doesn't connect with other applications. The recording option can only capture and generate scripts of my actions inside QtCreator but not for the applications run by QtCreator. Thanks for your help.

  • Getting AUT's host address from test script?

    Solved
    5
    0 Votes
    5 Posts
    549 Views
    B

    Hi @clanhuth,

    Thanks for the advice! I will look into this.

    Cheers,
    Bo

  • Quality Assurance Survey 2024

    1
    0 Votes
    1 Posts
    70 Views
    No one has replied
  • 0 Votes
    3 Posts
    316 Views
    C

    To test the effect, you need to add synchronization and verification. For example, if a button X appears (and is enabled and ready for interaction) after clicking button A, then, after letting the script click on button A, you could use waitForObject() to verify that button X exists and is "ready". However, this kind of object verification is implicit when you record a click on button A, then on button X, because Squish records waitForObject() (and the like) calls for mouse clicks automatically.

  • How to perform gui tesing in armv7?

    Solved
    2
    0 Votes
    2 Posts
    92 Views
    C

    Currently you need to compile or cross-compile Squish's Qt support on/for/to the desired target architecture. (In the future there will be Squish for Qt binary packages for some Linux variants for ARM based systems.)

    For compiling you need the Squish for Qt sources. These need to be enabled in the Squish GUI Tester subscription license that you are using. Please contact Squish technical support for this.

    For cross-compiling you need the Squish for Qt sources for cross-compilation. To enable these, the respective license option needs to be enabled in your Squish GUI Tester subscription license. If you do not see respective downloads in the download area at the Customer Portal (https://account.qt.io), then please contact your account manager at the Qt Group regarding this.

  • problem with a parent object

    Unsolved
    7
    0 Votes
    7 Posts
    253 Views
    C

    The readiness check in Squish for Qt for QML objects determines that the object is not ready for interaction, because it is not visible/accessible on the screen, because its parent clipped it away. What this means, and what to do, probably depends a lot on the situation, which I cannot derive from the information that you have provided.

    The script code that you provided should not result in this error, because it does not contain a waitForObject() call.

    If you only want to look up an object for something else than interaction, you can consider using the findObject() function, which does a one-time search for the object, and it does not perform the "readiness" check. It will throw an error if no matching object can be found, or return the reference to the found object.

  • Does Squish support WinUI 3?

    Solved
    2
    0 Votes
    2 Posts
    191 Views
    C

    Squish has no explicit support for this, yet. However, the support for Microsoft UI Automation (UIA, MS UIA) in "Squish for Windows" may be able to identify objects, even though it will not give access to the native API of the individual controls (something that Squish for Windows offers for Windows Forms and WPF based controls). If this would be sufficient for automation depends on the actual requirements, and which controls are identifiable that way.

    One can check with Microsoft's "Accessibility Insights" (https://accessibilityinsights.io/) - in many cases what this tool (or its older sibling "Inspect" (https://kb.froglogic.com/squish/howto/getting-information-toolkits-gui-controls-windows/#using-inspect-to-get-object-information-via-ui-automation)) identifies can be identified by Squish for Windows as well.

  • Survey: Squish Evaluation

    Unsolved
    1
    0 Votes
    1 Posts
    90 Views
    No one has replied
  • Failing to run and record AUT

    Solved
    2
    0 Votes
    2 Posts
    297 Views
    JakubTopolskiJ

    @JohnnyDoe it seems that you might be using an incorrect Squish package. Based on

    Starting AUT 'xyz' with wrappers Qt

    I guess your intention is to test a Qt application. At the same time

    C:\Users\ME\Squish for Windows 7.2.1

    suggests that you are using Squish for Windows. For testing Qt applications, the Squish for Qt package is required.
    Take a look at https://doc.qt.io/squish/installing-from-binary-packages.html#choosing-the-correct-squish-package
    I hope this will help.

  • 0 Votes
    1 Posts
    208 Views
    No one has replied
  • [Squish for Mac] setHookSubprocesses breaks AUT

    Solved
    2
    0 Votes
    2 Posts
    367 Views
    C

    @squisher, one can inject the Squish for Mac support into a running application (may require removing or adjusting the Hardened Runtime, if set for the application), via...

    squish_for_mac_dir/examples/mac/injection/injectMacWrapper.py

    It requires XCode to be installed on that computer.

    Usage:

    injectMacWrapper.py [--squish-dir=the_dir] --port=the_port aut_name_without_.app_postfix

    aut_name_without_.app_postfix can be an absolute or relative path to an app bundle. The app must already be running.

    Example (which explicitly launches SquishAddressBook.app beforehand):

    cd "/Users/myuser/Squish for Mac/examples/mac/injection" open ../addressbook/SquishAddressBook.app ./injectMacWrapper.py --port=4444 ../addressbook/SquishAddressBook

    The --squish-dir option has be left out; injectMacWrapper.py cycles through the parent directory, trying to find the Squish installation folder. This will not work when moving the .py file out of the Squish folder.

    Best regards,
    Clemens Anhuth

  • Coding squish python with PyCharm

    Unsolved
    3
    0 Votes
    3 Posts
    568 Views
    S

    @khreichel, this article should help
    https://kb.froglogic.com/squish/howto/using-squish-module-python-scripts-applications/
    But there are a lot of issues to resolve. But for sure, it is possible.

  • test.ocrTextPresent how to use Regular Expressions

    Solved
    2
    0 Votes
    2 Posts
    1k Views
    C

    @Danil-Sh-rf said in test.ocrTextPresent how to use Regular Expressions:

    Squish returned boolean False, it means that could not found word in text.
    How can to set regexp for this method?
    Description:
    https://doc.qt.io/squish/squish-api.html#test-ocrtextpresent-function

    Hi,

    This function is for verifying a single, hardcoded piece of text.

    You can implement this yourself by having it fetch all text (ideally from the smallest area/region/scope possible, for example just a single window, instead of all windows/the complete desktop), and then perform any kind of search you desired in the string returned by the OCR functionality.

    Best regards,
    Clemens Anhuth

  • 0 Votes
    2 Posts
    261 Views
    C

    @Gil-Novak said in Can Squish for Java applications interact with a Tauri UI app?:

    Can Squish for Java applications interact with a Tauri UI app?

    Hi,

    It seems that Tauri apps are based on JavaScript, etc. so probably compiled into web view based executables for the target systems?

    If so, Squish for Java would not seem like the right edition for it.

    If the compiled application is based on a web view, and Chromium in particular, then Squish for Web may be usable, to achieve automation on GUI object/element level.

    Otherwise image based automation could be done (depending on target operating system). For example Squish for Windows could likely be used to automate the application on Windows, to automate black box key presses, mouse interactions and perform synchronization and verification via image search. In addition, if Tauri apps offer accessibility information about the GUI controls on Windows, Squish for Windows may see these, and could use them for object look up, synchronization and verification, too.

    Best regards,
    Clemens Anhuth

  • Cross-compilation of Squish 7.2.0 for arm64

    Solved
    2
    0 Votes
    2 Posts
    312 Views
    C

    @KKolton said in Cross-compilation of Squish 7.2.0 for arm64:

    I am running into some issues while trying to do configuration.
    [...]

    For cross-compilation the respective license and Squish source package must be used.

    I recommend to contact the Squish technical support (ideally via the customer portal https://account.qt.io) to file a support request there.

    Best regards,
    Clemens Anhuth

  • Squish compatibility with LVGL based embedded system

    Solved
    2
    0 Votes
    2 Posts
    334 Views
    C

    @Aman_Kumar_Rishi said in Squish compatibility with LVGL based embedded system:

    Is Squish compatible with embedded GUI developed in LVGL library?

    Hi,

    Not that I am aware of.

    If the system can be reached via VNC one can use Squish for VNC, to perform blackbox keyboard and mouse/touch based automation, and image search for verification and synchronization.

    Best regards,
    Clemens Anhuth

  • Squish License - validating during install

    Solved
    2
    0 Votes
    2 Posts
    212 Views
    C

    @Nuno-Mendes said in Squish License - validating during install:

    Is it possible to install Squish without needing to validate the license?

    Hi,

    Not that I am aware of. You can install on a system which can reach the license server, then copy that Squish installation to the desired systems.

    Best regards,
    Clemens Anhuth

  • 0 Votes
    3 Posts
    359 Views
    C

    @Nuno-Mendes, @SquishHammer, I advise against this, and instead suggest to create separate Python functions that do the needful, and calling those instead as desired.

  • 0 Votes
    6 Posts
    770 Views
    JoeCFDJ

    @SquishHammer What is the Android version of tablet? Is Java 1.8 = 8 is good enough for the Android version of your tablet. Did you turn on the debug mode of Android tablet?