Zum Inhalt springen

Modul für externe QA-Prüfung

Mit diesem Modul kannst du erweiterte, KI-gestützte und andere spezialisierte QA-Prüfungen integrieren und so Übersetzungen auf differenzierte Probleme überprüfen, die von den standardmäßigen QA-Prüfungen oder JavaScript-basierten benutzerdefinierten QA-Prüfungen nicht erkannt werden können.

Du kannst Zugriff auf dieses Modul für eine der folgenden Benutzerkategorien gewähren:

  • Nur Organisationsadministratoren
  • Alle Benutzer in den Projekten der Organisation
  • Ausgewählte Benutzer
manifest.json
{
"modules": {
"external-qa-check": [
{
"key": "custom-check-qa",
"name": "QA Check",
"description": "Description",
"runQaCheckUrl": "/validate",
"getBatchSizeUrl": "/batch-size",
"url": "/settings/index.html"
}
]
}
}
key

Typ: string

Erforderlich: ja

Beschreibung: Kennung des Moduls innerhalb der Crowdin-App.

name

Typ: string

Erforderlich: ja

Beschreibung: Der für Menschen lesbare Name des Moduls.

description

Typ: string

Beschreibung: Die für Menschen lesbare Beschreibung der Funktion des Moduls.
Die Beschreibung wird in der Crowdin-Enterprise-Benutzeroberfläche angezeigt.

runQaCheckUrl

Typ: string

Erforderlich: ja

Beschreibung: Die relative URL, die ausgelöst wird, wenn Texte zur QA-Validierung gesendet werden.

getBatchSizeUrl

Typ: string

Erforderlich: nein

Beschreibung: Die relative URL, die beim Abrufen der vom Modul unterstützten Batchgröße ausgelöst wird.

url

Typ: string

Erforderlich: nein

Beschreibung: Die relative URL zur Einstellungsseite des Moduls.

environments

Typ: string

Zulässige Werte: crowdin-enterprise

Beschreibung: Menge der Umgebungen, in denen ein Modul installiert werden kann.
Dieser Parameter wird für produktübergreifende Anwendungen benötigt.

Das System sendet Texte zur QA-Validierung über runQaCheckUrl, entweder aus dem Editor nach dem Speichern der Übersetzung oder wenn QA-Prüfungen durchgeführt werden. Die App verarbeitet die Texte und antwortet dem System mit einer von zwei möglichen Antwortarten: ohne QA-Probleme oder mit QA-Problemen. Wenn die App die maximale Batchgröße für die QA-Prüfung bestimmen muss, setzt sie den Schlüssel getBatchSizeUrl in der manifest.json auf die URL zu einem Endpunkt, der die optimale Batchgröße bereitstellt.

Beispiel für die Nutzlast der Anfrage:

{
"data": {
"translations": [
{
"id": 12345,
"stringId": 1234567,
"languageId": "fr",
"userId": 1,
"text": "La mise à jour est installé avec succès.",
"provider": null,
"pluralCategoryName": null,
"isPreTranslated": false,
"rating": 0
}
],
"strings": [
{
"id": 1234567,
"key": "update_success",
"context": "Confirmation of successful software update",
"maxLength": null,
"text": "The update was successfully installed.",
"fields": []
}
],
57 ausgeblendete Zeilen
"sourceLanguage": {
"id": "en",
"name": "English",
"twoLettersCode": "en",
"threeLettersCode": "eng",
"locale": "en-US",
"pluralCategoryNames": ["one", "other"],
"pluralRules": "(n != 1)",
"pluralExamples": [1, 2],
"textDirection": "ltr",
"dialectOf": null
},
"targetLanguage": {
"id": "fr",
"name": "French",
"twoLettersCode": "fr",
"threeLettersCode": "fra",
"locale": "fr-FR",
"pluralCategoryNames": ["one", "other"],
"pluralRules": "(n > 1)",
"pluralExamples": [1, 2],
"textDirection": "ltr",
"dialectOf": null
},
"project": {
"id": 123,
"type": 0,
"sourceLanguage": {
"id": "en",
"name": "English",
"twoLettersCode": "en",
"threeLettersCode": "eng",
"locale": "en-US",
"pluralCategoryNames": ["one", "other"],
"pluralRules": "(n != 1)",
"pluralExamples": [1, 2],
"textDirection": "ltr",
"dialectOf": null
},
"targetLanguages": [
{
"id": "fr",
"name": "French",
"twoLettersCode": "fr",
"threeLettersCode": "fra",
"locale": "fr-FR",
"pluralCategoryNames": ["one", "other"],
"pluralRules": "(n > 1)",
"pluralExamples": [1, 2],
"textDirection": "ltr",
"dialectOf": null
}
],
"name": "Project Name",
"description": "Project Description",
"fields": []
},
"file": {
"id": 123,
"name": "filename.csv",
"title": null,
"context": null,
"type": "csv",
"path": "/filename.csv",
"fields": []
}
}
}

Beispiel für die Nutzlast der Antwort:

{
"data": {
"validations": [
{
"translationId": 123,
"passed": true
}
]
}
}

Beispiel für die Nutzlast der Antwort:

{
"data": {
"validations": [
{
"translationId": 456,
"passed": false,
"error": {
"message": "Example error message"
}
}
]
}
}

Beispiel für die Nutzlast der Antwort:

{
"data": {
"size": 10
}
}

Die Struktur der Antworten der App muss den dargestellten Beispielen entsprechen. Andernfalls betrachtet Crowdin sie als ungültig.

War diese Seite hilfreich?