Lesen und beachten Sie die Automation Anywhere-Dokumentation

Automation Anywhere Automation 360

Inhalt schließen

Inhalte

Inhalt öffnen

Standardmäßige Codierverfahren und Richtlinien für die Entwicklung von Paketen

  • Aktualisiert: 3/22/2021
    • Automation 360 v.x
    • Erstellen
    • RPA Workspace

Standardmäßige Codierverfahren und Richtlinien für die Entwicklung von Paketen

In diesem Thema werden standardmäßige Codierverfahren und Richtlinien behandelt, die zur Entwicklung hochwertiger Pakete beitragen.

Testen
Stellen Sie qualitativ hochwertigen Code sicher. Schreiben Sie ausreichend Unit-Tests und Integrationstests für Ihr Paket.
Symbole
Stellen Sie das richtige Symbol für Ihr Paket ein.
Manuelles Einstellen der Version
Die Build-Version des SDK-Pakets wird bei jedem Build automatisch aktualisiert. Sie können sie jedoch manuell im Befehlsprojekt einer gemeinsamen Datei build.gradle festlegen.
  • Aktualisieren Sie die Datei build.gradle vor einem Build.
  • Geben Sie bis zu vier Ziffern ein, getrennt von einem Punkt, wie unten gezeigt:

. . .
ext {
    version '2.0.8'
}
dependencies {...}
Abhängigkeiten
Betten Sie alle Abhängigkeiten in Ihr Paket-JAR ein. Laden Sie die Abhängigkeiten zur Laufzeit, indem Sie sie an einen temporären Speicherort extrahieren. Vergewissern Sie sich, dass der temporäre Speicherort nach dem Laden der Abhängigkeiten bereinigt wird.
Abhängige JAR-Dateien
Fügen Sie abhängige JAR-Dateien unter Abhängigkeiten in der Datei build.gradle als Implementierung hinzu, sodass die abhängigen JAR-Dateien verpackt 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'
	}
. . . 
Fügen Sie neue Aktionen zum Beenden des Pakets hinzu
Wenn Sie einem vorhandenen Paket neue Aktionen hinzufügen, stellen Sie sicher, dass vor dem Verpacken eine Reinigung durchgeführt wird. Es ist immer eine gute Praxis, Clean Build zu machen - gradlew.bat Clean Build shadowJar.
Fehlermeldungen
Geben Sie aussagekräftige Fehlermeldungen an.
  • Senden Sie aussagekräftige Fehlermeldungen. Zum Beispiel, in der lokalen Sprache mit i18n APIs mit BotCommandException, werfen Sie eine neue Ausnahme BotCommandException(MESSAGES.GetString("run.exception.InvalidWorkingDirPath")).
  • Werfen Sie keine generischen Fehlermeldungen, wie z. B. ex.message.
Grundlegende Validierung
Verwenden Sie die Regeln für Validierungsanmerkungen, z. B. @NotEmpty , die in diesem Entwicklungskit enthalten sind. Fügen Sie keine grundlegenden Validierungen für Ihren Code hinzu. Einzelheiten finden Sie unter Validierungsanmerkungen.
Schleifen
Vermeiden Sie lange Schleifen in Ihrem Code. Lange Schleifen können zu einer hohen CPU-Auslastung führen, was zu Fehlern wie „bot reagiert nicht“ führen kann.
Protokollierung hinzufügen
Verwenden Sie den standardmäßigen Log4j -Logger, der im bot-Laufzeitframework bereitgestellt wird. Fügen Sie keinen eigenen Logger hinzu. Weitere Informationen finden Sie im Beispielcode.
Protokollierungsebenen
  • FEHLER/SCHWERWIEGEND: Schwerwiegender Fehler, bei dem der Benutzer betroffen ist und es keine Problemumgehung gibt.
  • WARNUNG : Es ist ein unerwarteter Fehler aufgetreten, aber das System hat sich davon erholt.
  • INFO: Informationsmeldungen über Statusänderungen, z. B. eine akzeptierte Anforderung.
  • Debug... Detaillierte Diagnoseinformationen, die zum Debuggen von Fehlern benötigt werden.
  • TRACE: Alle Informationen werden über das Verhalten einer Anwendung erfasst.

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

Ressourcen werden geladen
Alle Ressourcen sollten mit dem aktuellen Thread-Kontextklassenlader geladen werden, wie im folgenden Beispiel gezeigt:
Thread.currentThread().getContextClassLoader().getResourceAsStream("resource.json");
Feedback senden