Skip to main content

QA Touch reporter for Squish (Froglogic/Qt) - auto-creates modules, test cases and test runs from Squish native XML or JUnit XML result files.

Project description

squish-qatouch

QA Touch reporter for Squish (Froglogic / Qt Group) — pure Python, zero dependencies. Reads your Squish result file and automatically creates modules, test cases, milestones, and test runs in QA Touch.

Supported result formats

Format How to generate
Squish native XML squishrunner --reportgen xml,results.xml
JUnit XML squish2junit results/ junit.xml

Auto-detected at runtime — just point --results at the file.

Works with all Squish script languages

Python, JavaScript, Perl, Ruby, Tcl — the script language does not matter. squishrunner always produces the same XML format.

Installation

pip install squish-qatouch

Requires Python >= 3.10. No third-party dependencies.

Usage — CLI

# after squishrunner writes results.xml
squish-qatouch \
  --results   ./results/squish.xml \
  --domain    mycompany \
  --token     $QATOUCH_TOKEN \
  --project   PROJ \
  --assign    user-key \
  --milestone-name "Sprint 12"

Or via python -m:

python -m squish_qatouch --results results.xml --domain mycompany \
  --token $QATOUCH_TOKEN --project PROJ --assign user-key

Usage — Python API

from squish_qatouch import SquishQATouchReporter

reporter = SquishQATouchReporter(
    domain="mycompany",
    api_token="YOUR_TOKEN",
    project_key="PROJ",
    assign_to="user-key",
    results_file="./results/squish.xml",
    milestone_name="Sprint 12",   # created automatically if missing
    tag="squish",
)
reporter.run()

All options

Option CLI flag Default Description
domain --domain QA Touch domain
api_token --token QA Touch API token
project_key --project QA Touch project key
assign_to --assign User key to assign the run to
results_file --results Path to Squish XML or JUnit XML
testsuite_id --testsuite Pin all cases to one module key
milestone_name --milestone-name "Squish Automation" Milestone name
milestone_key --milestone-key Use existing milestone key directly
create_cases --no-create-cases True Auto-create missing test cases
tag --tag "squish" Tag on the test run

CI example (GitHub Actions)

- name: Run Squish tests
  run: |
    squishrunner --testsuite suite_MyApp --reportgen xml,results/squish.xml

- name: Set up Python
  uses: actions/setup-python@v5
  with:
    python-version: "3.12"

- name: Upload to QA Touch
  run: |
    pip install squish-qatouch
    squish-qatouch --results results/squish.xml \
      --domain mycompany --token ${{ secrets.QATOUCH_TOKEN }} \
      --project PROJ --assign user-key

License

ISC

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

squish_qatouch-1.0.1.tar.gz (11.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

squish_qatouch-1.0.1-py3-none-any.whl (11.9 kB view details)

Uploaded Python 3

File details

Details for the file squish_qatouch-1.0.1.tar.gz.

File metadata

  • Download URL: squish_qatouch-1.0.1.tar.gz
  • Upload date:
  • Size: 11.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.7

File hashes

Hashes for squish_qatouch-1.0.1.tar.gz
Algorithm Hash digest
SHA256 47dbabee958a7c55977b0622ed7a9c1b320c56fde329d4dca1a55ee221d30372
MD5 8102dd73747b0c9ddbacec673257cd83
BLAKE2b-256 b616bd8e4e118f7aa6e17b36117428388ad57a9d3b7b9585b5e1194982111661

See more details on using hashes here.

File details

Details for the file squish_qatouch-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: squish_qatouch-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 11.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.7

File hashes

Hashes for squish_qatouch-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 28ceb651c36f2eccf4e5a56f79e8fafac6c598f186e97d63cdc9adf5d56f9a16
MD5 f9f29749d7954e3038e5c805e06e6b57
BLAKE2b-256 d1465ff6d9505b3c4f5c58a30ac19745b3b91145473c398ee26d2df30cca1c45

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page