Lesen und beachten Sie die Automation Anywhere-Dokumentation

Automation 360

Inhalt schließen

Inhalte

Inhalt öffnen

Standardcodierungsverfahren und Richtlinien für die Entwicklung von Paketen

  • Aktualisiert: 2022/05/19
    • Automation 360 v.x
    • Erstellen
    • RPA Workspace

Standardcodierungsverfahren und Richtlinien für die Entwicklung von Paketen

Dieses Thema befasst sich mit Standardkodierungspraktiken und -richtlinien, die dazu beitragen, die Entwicklung qualitativ hochwertiger Pakete zu gewährleisten.

Prüfung
Sicherstellung einer hohen Codequalität. Schreiben Sie genügend Unit-Tests und Integrationstests für Ihr Paket.
Icons
Legen Sie das richtige Symbol für Ihr Paket fest.
Manuelle Einstellung der Version
Die Build-Version des SDK-Pakets wird jedes Mal automatisch aktualisiert, wenn ein Build stattfindet. Sie können ihn jedoch auch manuell im Befehlsprojekt einer gemeinsamen build.gradle Datei setzen.
  • Aktualisieren Sie die build.gradle Datei vor einem Build.
  • Geben Sie bis zu vier Ziffern ein, getrennt durch einen Punkt, wie unten gezeigt:

. . .
ext {
    version '2.0.8'
}
dependencies {...}
Abhängigkeiten
Betten Sie alle Abhängigkeiten in Ihr JAR-Paket ein. Laden Sie die Abhängigkeiten zur Laufzeit, indem Sie sie in einen temporären Speicherort extrahieren. Stellen Sie sicher, dass Sie den temporären Speicherort bereinigen, nachdem die Abhängigkeiten geladen wurden.
Abhängige JAR-Dateien
Fügen Sie abhängige JAR-Dateien unter dependencies in der Datei build.gradle als Implementierung hinzu, damit die abhängigen JAR-Dateien gepackt werden.
	
. . .
dependencies {
		compileOnly name: 'command-annotations'
		compileOnly name: 'bot-runtime'
		compileOnly name: 'bot-api'
		implementation name: 'i18n-api'
              implementation name: 'mydependentjavafile.jar'
		apt name: 'command-processor'
		compileOnly group: 'org.apache.logging.log4j', name: 'log4j-core', version: "$loggerVersion"
		testImplementation "org.testng:testng:$testNgVersion"
		testImplementation name: 'bot-runtime'
		testImplementation name: 'bot-api'
	}
. . . 
Neue Aktionen zum bestehenden Paket hinzufügen
Wenn Sie neue Aktionen zu einem bestehenden Paket hinzufügen, sollten Sie es vor dem Verpacken reinigen. Es ist immer eine gute Praxis, einen sauberen Build durchzuführen - gradlew.bat clean build shadowJar.
Fehlermeldungen
Liefern Sie aussagekräftige Fehlermeldungen.
  • Machen Sie sinnvolle Fehlermeldungen ausgeben. Zum Beispiel in der lokalen Sprache mit i18n-APIs mit BotCommandExceptioneine neue Ausnahme auslösen BotCommandException(MESSAGES.getString("Run.Exception.InvalidWorkingDirPath")).
  • Keine generische Fehlermeldungen ausgeben, wie z.B. ex.message.
Basis-Validierung
Verwenden Sie die Validierungsannotationsregeln, wie z.B. @NotEmpty die in diesem Entwicklungskit enthalten sind. Fügen Sie keine grundlegenden Validierungen für Ihren Code hinzu. Einzelheiten finden Sie unter Validierungsvermerke.
Schleifen
Vermeiden Sie lang laufende Schleifen in Ihrem Code. Lange laufende Schleifen können eine hohe CPU-Auslastung verursachen, was zu Fehlern wie "Bot reagiert nicht" führt.
Protokollierung hinzufügen
Verwenden Sie den Standard log4J Logger, der im Bot-Laufzeit-Framework enthalten ist. Fügen Sie nicht Ihren eigenen Logger hinzu. Siehe den Beispielcode für Details.
Stufen der Protokollierung
  • ERROR/FATAL: Schweres Fehlerereignis, bei dem der Benutzer betroffen ist und es keine Abhilfe gibt.
  • WARN : Ein unerwarteter Fehler ist aufgetreten, aber das System hat sich davon erholt.
  • INFO: Informationsmeldungen über Zustandsänderungen, z. B. über eine angenommene Anfrage.
  • DEBUG: Detaillierte Diagnoseinformationen, die zur Fehlersuche benötigt werden, wenn etwas schief läuft.
  • TRACE: Es werden alle Informationen über das Verhalten einer Anwendung erfasst.

    Wenn Sie sich über die Protokollebene nicht sicher sind, setzen Sie sie auf TRACE.

Ressourcen laden
Alle Ressourcen sollten mit dem Klassenlader für den aktuellen Thread-Kontext geladen werden, wie im folgenden Beispiel gezeigt:
Thread.currentThread().getContextClassLoader().getResourceAsStream("resource.json");
Feedback senden