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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file squish_qatouch-1.0.0.tar.gz.
File metadata
- Download URL: squish_qatouch-1.0.0.tar.gz
- Upload date:
- Size: 11.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ee181dad0795909752e7d8b09c486568a05b20a6447ac9494e2641bb3fb29836
|
|
| MD5 |
d4a7873576f706522175b9e95656add5
|
|
| BLAKE2b-256 |
e8bfbcfe523a3fcf344ea31c03d4c5387f9e2826374bf859e770cb59a8ddde4a
|
File details
Details for the file squish_qatouch-1.0.0-py3-none-any.whl.
File metadata
- Download URL: squish_qatouch-1.0.0-py3-none-any.whl
- Upload date:
- Size: 11.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4b72d9e786d58cb54b97469730fb5cb34aa4773a026ddb82cc8b250bfd64d4d3
|
|
| MD5 |
7fdef4a6183bc4e141b1a1767894669f
|
|
| BLAKE2b-256 |
9decbc2c77134891722142086c680811a78920d3208396683763a8ee772aceb8
|