suchen
HeimBackend-EntwicklungPython-Tutorial# | Automatisieren Sie die PDF-Datenextraktion: Benutzerakzeptanztests

Überblick

Vor jeder Funktionsveröffentlichung führe ich Benutzerakzeptanztests („UAT“) durch, um Fehler aufzudecken und sicherzustellen, dass die Geschäftslogik korrekt in Code übersetzt wird.

Ich gebe eine Funktion erst dann zur Veröffentlichung frei, wenn UAT 100 % erfolgreich ist.

Meine Argumentation ist einfach: Sie haben nur eine Chance, beim Endbenutzer einen guten ersten Eindruck zu hinterlassen, und eine schlechte Veröffentlichung macht es doppelt schwierig.

# | Automate PDF data extraction: User Acceptance Testing

Obwohl es sich hierbei um eine MVP-Funktion handelt, die nicht für die Produktionsveröffentlichung gedacht ist, dachte ich, es wäre gut, ein wenig UAT durchzuführen, um meine Fähigkeiten auf dem neuesten Stand zu halten.

Ergebnisse

Von den 19 UAT-Szenarien, die ich mir ausgedacht habe, scheiterte eines an einer Änderung in der PDF-Vorlage Depotbankerklärung.

Ich habe dieses Risiko während der Discovery vorhergesehen, aber um ehrlich zu sein, habe ich nicht damit gerechnet, dass das Problem so bald auftauchen würde.

Ich werde später im Artikel auf die Details zur Fehlerbehebung eingehen.

Methodik

Mein UAT-Prozess beinhaltet die Verwendung der Geschäftslogik oder der Funktionsanforderungen als Referenz, um Testszenarien und erwartete Ergebnisse zu erstellen.

Testszenarien müssen nicht kompliziert sein. Sie können so einfach sein wie: „Die Funktion generiert innerhalb von 30 Sekunden eine CSV-Datei.“

Für die UAT habe ich 71 Seiten Dokumente aus 10 Depotbankauszugs-PDFs verarbeitet. Dies sollte ein ausreichend großer Probensatz sein.

Die erwartete Ausgabe besteht aus drei CSV-Dateien mit spezifischen Datenpunkten aus den Abschnitten Fondsbestände, Wertpapierbestände und Barmittelbestände des Depotbankauszugs-PDFs.

Ich habe mir folgende Testfälle ausgedacht:

CSV 1: Fondsbestände

# | Automate PDF data extraction: User Acceptance Testing

CSV 2: Wertpapierbestände

# | Automate PDF data extraction: User Acceptance Testing

CSV 3: Bargeldbestände

# | Automate PDF data extraction: User Acceptance Testing

Fehlerbehebung

Der einzige fehlgeschlagene Test war darauf zurückzuführen, dass sich die Vorlage der PDF-Datei mit der Depotbankerklärung im November geringfügig geändert hat. Genauer gesagt haben die Werte in der Spalte „Aktueller Wert# 1. Fremdwährung 2. RM-Äquivalent“ einer Fondsbestandstabelle jetzt ein zusätzliches „-n“-Präfix.

Anstatt beispielsweise „10.000 USD“ in früheren PDFs zu lesen, lautet der Wert jetzt „- 10.000 USD“.

# | Automate PDF data extraction: User Acceptance Testing

Diese kleine Änderung führte zu folgendem Problem:

# | Automate PDF data extraction: User Acceptance Testing

Ich habe ChatGPT bezüglich einer Lösung konsultiert und es wurde empfohlen, die folgende Scrubbing-Logik hinzuzufügen, um das falsche „-/n“-Präfix zu entfernen.

# Scrub error prefix
df['Currency'] = df['Currency'].str.replace('[-\n]', '', regex=True)

Das Bereinigen hat seinen Zweck erfüllt und die CSV-Ausgabe der Fondsbestände sieht jetzt wie erwartet aus.

Was kommt als Nächstes?

Ich bin jetzt sicher, dass der Code zum Extrahieren von PDF-Daten funktioniert. Allerdings glaube ich nicht, dass eine CSV-Datei der beste Ort zum Speichern all dieser Daten ist.

Obwohl CSV (für mich) benutzerfreundlich ist, erleichtert das Speichern von Daten in einer Datenbank das Abrufen und Bearbeiten von Daten gemäß den Anforderungen des Endbenutzers erheblich.

Ich habe nur sehr begrenzte Erfahrung mit Datenbanken. Was ich also als Nächstes tun werde, ist Discovery für eine Datenbankanwendung, die ich schnell integrieren kann.

--Ende

Das obige ist der detaillierte Inhalt von# | Automatisieren Sie die PDF-Datenextraktion: Benutzerakzeptanztests. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Zusammenführen von Listen in Python: Auswählen der richtigen MethodeZusammenführen von Listen in Python: Auswählen der richtigen MethodeMay 14, 2025 am 12:11 AM

Tomgelistsinpython, Youcanusethe-Operator, ExtendMethod, ListCompredesion, Oritertools.chain, jeweils mitSpezifizierungen: 1) Der OperatorissimpleButlessEfficienceforlargelists; 2) Extendismory-Effizienzbutmodifiestheoriginallist;

Wie verkettet man zwei Listen in Python 3?Wie verkettet man zwei Listen in Python 3?May 14, 2025 am 12:09 AM

In Python 3 können zwei Listen mit einer Vielzahl von Methoden verbunden werden: 1) Verwenden Sie den Bediener, der für kleine Listen geeignet ist, jedoch für große Listen ineffizient ist. 2) Verwenden Sie die Erweiterungsmethode, die für große Listen geeignet ist, mit hoher Speicher -Effizienz, jedoch die ursprüngliche Liste. 3) Verwenden Sie * Operator, der für das Zusammenführen mehrerer Listen geeignet ist, ohne die ursprüngliche Liste zu ändern. 4) Verwenden Sie iTertools.chain, das für große Datensätze mit hoher Speicher -Effizienz geeignet ist.

Python Concatenate List SaitenPython Concatenate List SaitenMay 14, 2025 am 12:08 AM

Die Verwendung der join () -Methode ist die effizienteste Möglichkeit, Zeichenfolgen aus Listen in Python zu verbinden. 1) Verwenden Sie die join () -Methode, um effizient und leicht zu lesen. 2) Der Zyklus verwendet die Bediener für große Listen ineffizient. 3) Die Kombination aus Listenverständnis und Join () eignet sich für Szenarien, die Konvertierung erfordern. 4) Die Verringerung () -Methode ist für andere Arten von Reduktionen geeignet, ist jedoch für die String -Verkettung ineffizient. Der vollständige Satz endet.

Python -Ausführung, was ist das?Python -Ausführung, was ist das?May 14, 2025 am 12:06 AM

PythonexexecutionStheProcessOfTransformingPythonCodeIntoexexexecleableInstructions.1) ThePythonvirtualmachine (PVM) Ausführungen

Python: Was sind die wichtigsten Merkmale?Python: Was sind die wichtigsten Merkmale?May 14, 2025 am 12:02 AM

Zu den wichtigsten Merkmalen von Python gehören: 1. Die Syntax ist prägnant und leicht zu verstehen, für Anfänger geeignet; 2. Dynamisches Typsystem, Verbesserung der Entwicklungsgeschwindigkeit; 3. Reiche Standardbibliothek, Unterstützung mehrerer Aufgaben; 4. Starke Gemeinschaft und Ökosystem, die umfassende Unterstützung leisten; 5. Interpretation, geeignet für Skript- und Schnellprototypen; 6. Support für Multi-Paradigma, geeignet für verschiedene Programmierstile.

Python: Compiler oder Dolmetscher?Python: Compiler oder Dolmetscher?May 13, 2025 am 12:10 AM

Python ist eine interpretierte Sprache, enthält aber auch den Zusammenstellungsprozess. 1) Python -Code wird zuerst in Bytecode zusammengestellt. 2) Bytecode wird von Python Virtual Machine interpretiert und ausgeführt. 3) Dieser Hybridmechanismus macht Python sowohl flexibel als auch effizient, aber nicht so schnell wie eine vollständig kompilierte Sprache.

Python für Loop vs während der Schleife: Wann zu verwenden, welches?Python für Loop vs während der Schleife: Wann zu verwenden, welches?May 13, 2025 am 12:07 AM

UseaforloopwheniteratoverasequenceOrforaPecificNumberoftimes; UseaWhileloopWencontiningUntilAconDitionisMet.ForloopsardealForknown -Sequencies, während whileloopSuituationen mithungeterminediterationen.

Python Loops: Die häufigsten FehlerPython Loops: Die häufigsten FehlerMay 13, 2025 am 12:07 AM

PythonloopscanleadtoErors-ähnliche Finanzeloops, ModificingListsDuringiteration, Off-by-Oneerrors, Zero-Indexingissues und Nestroxinefficiens.toavoidthese: 1) Verwenden Sie

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Nordhold: Fusionssystem, erklärt
4 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
Mandragora: Flüstern des Hexenbaum
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

WebStorm-Mac-Version

WebStorm-Mac-Version

Nützliche JavaScript-Entwicklungstools

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

SublimeText3 Linux neue Version

SublimeText3 Linux neue Version

SublimeText3 Linux neueste Version

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools