UAT Studioαπό τη Salvion
Βοήθεια · Συνδέσεις

Το REST API του UAT Studio

Διαβάστε και καταγράψτε ζητήματα, σχόλια, εγκρίσεις και δοκιμαστές από τα δικά σας scripts και εργαλεία, και αφήστε το pipeline σας να ρωτά αν μια έκδοση μπορεί να προχωρήσει. Με ένα API key έργου.

Διεύθυνση https://app.uat.studio/api/v1Ποιος ένας διαχειριστής του έργου δημιουργεί το κλειδίΜορφή JSONΠακέτα Team, Business, Partner και Enterprise
Πριν ξεκινήσετε

Τι χρειάζεστε

  • Τη λειτουργία Connections στον χώρο εργασίας σας: περιλαμβάνεται στα πακέτα Team, Business, Partner και Enterprise, και ως πρόσθετη λειτουργία Integrations for one UAT με το πακέτο Project.
  • Δικαιώματα διαχειριστή στο έργο του UAT Studio.
  • Ένα εργαλείο που μπορεί να στέλνει αιτήματα HTTPS: ένα script, το CI pipeline σας, το Postman ή μια πλατφόρμα ολοκλήρωσης.

Χρησιμοποιείτε Zapier ή Make; Τότε δεν χρειάζεται να καλείτε εσείς το API: δείτε Zapier και Make.

Ρύθμιση · μία φορά ανά έργο

Συνδέστε το εργαλείο σας

1

Δημιουργήστε ένα API key

  1. Συνδεθείτε στο app.uat.studio, ανοίξτε το έργο και μεταβείτε στο Setup.
  2. Στην κάρτα API keys, πληκτρολογήστε ένα όνομα, π.χ. Release pipeline, και κάντε κλικ στο Create API key.
  3. Κάντε κλικ στο Copy. Το UAT Studio εμφανίζει το κλειδί μόνο μία φορά. Αποθηκεύστε το ως secret στο εργαλείο σας, για παράδειγμα UAT_STUDIO_KEY.
2

Κάντε μια κλήση

Στείλτε το κλειδί με κάθε αίτημα ως Authorization: Bearer, ένα κενό και το κλειδί. Για παράδειγμα, τα πιο πρόσφατα ζητήματα:

curl -H "Authorization: Bearer $UAT_STUDIO_KEY" "https://app.uat.studio/api/v1/issues?order=created&limit=10"

Ένα νέο ζήτημα, με JSON στο σώμα του αιτήματος:

curl -X POST "https://app.uat.studio/api/v1/issues" \
  -H "Authorization: Bearer $UAT_STUDIO_KEY" \
  -H "Content-Type: application/json" \
  -d '{"title": "Save fails on a new quote", "severity": "High", "test_number": 12}'

Η απάντηση είναι σε JSON. Κάθε ζήτημα συνοδεύεται από το κλειδί του (ISS-012), τον τίτλο, την περιγραφή, τη σοβαρότητα, την προτεραιότητα, την κατάσταση, τον υπεύθυνο, τη δοκιμή και τον δοκιμαστή που το βρήκε, το ticket σε Jira ή Azure DevOps και έναν σύνδεσμο προς το UAT Studio.

Τι μπορείτε να χρησιμοποιήσετε · https://app.uat.studio/api/v1

Οι διευθύνσεις του API

ΕίδοςΑίτημαΤι κάνει
ΑνάγνωσηGET /meΤο έργο στο οποίο ανήκει το κλειδί.
ΑνάγνωσηGET /issues?order=createdΤα πιο πρόσφατα ζητήματα. order=updated: αυτά που άλλαξαν τελευταία. Επίσης since (ημερομηνία και ώρα), status και limit (έως 100).
ΑνάγνωσηGET /issues/ISS-012Ένα ζήτημα, με το βήμα που αφορά και το ιστορικό του.
ΔημιουργίαPOST /issuesΈνα νέο ζήτημα: title και προαιρετικά description, severity, priority, test_number, step_number, assignee, record_url. Χωρίς test_number (και με group για την ομάδα που το ελέγχει), το ζήτημα παίρνει δικό του σενάριο ελέγχου μόλις οριστεί σε Έτοιμο για επανέλεγχο.
ΑλλαγήPATCH /issues/ISS-012status, severity, assignee ή record_url, με προαιρετικό comment. Αν ορίσετε την status ενός ζητήματος χωρίς σενάριο ελέγχου σε Ready for retest, δημιουργείται το σενάριο ελέγχου του· η απάντηση περιέχει τότε "test_case": "created".
ΑλλαγήPOST /issues/ISS-012/commentsΈνα comment στο ιστορικό.
ΑνάγνωσηGET /casesΤα σενάρια ελέγχου με τα βήματά τους και πόσα αποτελέσματα είναι Pass, Fail κ.λπ. Επίσης epic, since και limit (έως 1.000).
ΔημιουργίαPOST /casesΈνα σενάριο ελέγχου: title, steps (μια λίστα με action, expected και προαιρετικά data) και προαιρετικά external_id, epic, group, links, priority (Must, Should ή Could) και risk (High, Medium ή Low). Στείλτε ξανά το ίδιο external_id για να το ενημερώσετε· τα βήματα στην ίδια θέση διατηρούν τα αποτελέσματά τους.
ΔημιουργίαPOST /testersΈνας δοκιμαστής: name και προαιρετικά email και group. Η πρόσκληση αποστέλλεται από το Setup.
ΑνάγνωσηGET /signoffsΟι εγκρίσεις, οι πιο πρόσφατες πρώτα.
ΑνάγνωσηGET /groupsΟι ομάδες του έργου.
ΑνάγνωσηGET /statusGo ή no-go για μια έκδοση: δείτε παρακάτω.
Για το pipeline σας

Πύλη έκδοσης: deploy όταν η επιχείρηση έχει δώσει έγκριση

Το GET /status απαντά με ένα decision: go όταν ο τρέχων γύρος έχει εγκριθεί και δεν υπάρχει ανοιχτό ζήτημα Critical, no-go όταν μια έγκριση έχει απορριφθεί ή υπάρχει ανοιχτό ζήτημα Critical, και open όταν δεν έχει ληφθεί ακόμη απόφαση. Με ?gate=1, οτιδήποτε εκτός από go απαντά με HTTP 409, ώστε το βήμα στο pipeline σας να αποτυγχάνει.

- name: UAT signed off?
  run: curl --fail-with-body -sS -H "Authorization: Bearer ${{ secrets.UAT_STUDIO_KEY }}" "https://app.uat.studio/api/v1/status?gate=1"

Χρησιμοποιήστε ξεχωριστό κλειδί για το pipeline, ώστε να μπορείτε να το ανακαλέσετε χωριστά.

Αν κάτι πάει στραβά

Απαντήσεις και τι να κάνετε

ΑπάντησηΤι να κάνετε
401: το API key δεν είναι έγκυροΤο κλειδί ανακλήθηκε ή πληκτρολογήθηκε λάθος. Δημιουργήστε νέο κλειδί στο Setup › API keys.
403: δεν περιλαμβάνεται στο πακέτο ή μόνο για ανάγνωσηΟ χώρος εργασίας δεν έχει τη λειτουργία Connections ή το πακέτο του έχει λήξει. Η ανάγνωση εξακολουθεί να λειτουργεί όταν είναι μόνο για ανάγνωση.
404: δεν υπάρχει ζήτημα ISS-…Το κλειδί ανήκει σε άλλο έργο ή το ζήτημα συγχωνεύθηκε.
400: ένα πεδίο δεν είναι σωστόΤο μήνυμα αναφέρει ποιο πεδίο, για παράδειγμα μια σοβαρότητα που δεν υπάρχει.
409 με ?gate=1Η έκδοση δεν μπορεί να προχωρήσει ακόμη: η απάντηση περιέχει τους λόγους.
Ασφάλεια

Πώς προστατεύεται το κλειδί

  • Ένα κλειδί δίνει πρόσβαση σε ένα έργο, σε τίποτε άλλο στον χώρο εργασίας σας.
  • Το UAT Studio αποθηκεύει μόνο ένα αποτύπωμα του κλειδιού, ποτέ το ίδιο το κλειδί. Το Setup δείχνει τους τέσσερις τελευταίους χαρακτήρες και πότε χρησιμοποιήθηκε τελευταία φορά.
  • Το Revoke στο Setup απενεργοποιεί ένα κλειδί αμέσως.
  • Κάθε ζήτημα ή δοκιμαστής που δημιουργείται ή αλλάζει μέσω ενός κλειδιού εμφανίζεται στο ιστορικό του ζητήματος και στο αρχείο ελέγχου, με το όνομα του κλειδιού.
  • Μη βάζετε ποτέ ένα κλειδί σε email, συνομιλία ή κώδικα· αποθηκεύστε το ως secret στο εργαλείο σας.