Coder Social home page Coder Social logo

uglide / rocketpilot Goto Github PK

View Code? Open in Web Editor NEW
17.0 4.0 2.0 624 KB

🚀 Cross-platform tool for functional GUI testing of Qt applications

License: GNU General Public License v3.0

Python 100.00%
qt gui-testing functional-testing python qt5 cross-platform

rocketpilot's Introduction

🚀 RocketPilot

Cross-platform tool for functional GUI testing of Qt applications based on Canonical Autopilot project.

Installation

Ubuntu

sudo apt-get install python3 python3-pyqt5 -y
sudo apt-get install libxpathselect-dev -y
sudo apt-get install libdbus-1-dev libdbus-glib-1-dev -y

virtualenv --system-site-packages -p python3 .venv

source .venv/bin/activate

pip install -e . 

macOS

WARNING: Do NOT install Qt from brew, use the official Qt version instead (https://www.qt.io/download-open-source).

brew install python3 pkgconfig dbus dbus-glib
brew services start dbus

python3 -m venv --system-site-packages ~/.venv

source ~/.venv/bin/activate

pip install -e . 

Helpful link about dbus installation and troubleshooting on macOS https://github.com/zbentley/dbus-osx-examples/blob/master/installation/README.md

Apple Silicone

Ensure that LD_LIBRARY_PATH contains path to libdbus, for example /opt/homebrew/Cellar/dbus/1.12.20/lib

Windows

  1. Install Python 3.9 amd64, Qt5 (https://www.qt.io/download-open-source)
  2. Install Msys2 to C:\msys64 & update core packages
  3. Install dbus:
pacman -S mingw64/mingw-w64-x86_64-dbus
  1. Update C:\msys64\mingw64\share\dbus-1\session.conf :
<listen>tcp:host=localhost,port=54321,family=ipv4</listen>
  1. Add C:\msys64\mingw64\bin to PATH
  2. Add DBUS_SESSION_BUS_ADDRESS env variable with value tcp:host=localhost,port=54321,family=ipv4
  3. Run dbus-daemon.exe --session
  4. Download & unpack pre-compiled dbus-python package to Python 3.9 amd64 installation directory
  5. Verify that dbus-python package is installed correctly:
C:\Python39-x64>python
>>> import os
>>> os.add_dll_directory("C:/msys64/mingw64/bin")
>>> import dbus.mainloop.glib
>>> # No errors should appear here

Introspect application

  1. Build rocketpilot-driver https://github.com/uglide/rocketpilot-driver/blob/master/README.md
  2. Install PyQt5
  3. Run vis tool
    rocketpilot-vis APPNAME

rocketpilot's People

Contributors

mrnom avatar uglide avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

mrnom

rocketpilot's Issues

a question about vistool

Hello!When I used the command “rocketpilot-vis”,it said cannot import name "InlineKeyboardMarkup" from "pyrogram".I don't konw how to reslove this problem.Also I was wondering if there is a more detailed documentation about this project rocketpilot.

cannot load library qttestability

Hi uglide. I am sorry to bother you. I have followed your README file and built the rocketpilot and its driver.
When I used the command rocketpilot-vis appname,it said that Library qttestability load failed:"Cannot load library qttestability:(no such file or directory). Sure I do something when I build the qt application?
I am a new user of qt so I wonder if I have missed some steps in building this project.
Thank you for your attention.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.