DE60305073T2 - Bidirektionale sondierung von software - Google Patents

Bidirektionale sondierung von software Download PDF

Info

Publication number
DE60305073T2
DE60305073T2 DE60305073T DE60305073T DE60305073T2 DE 60305073 T2 DE60305073 T2 DE 60305073T2 DE 60305073 T DE60305073 T DE 60305073T DE 60305073 T DE60305073 T DE 60305073T DE 60305073 T2 DE60305073 T2 DE 60305073T2
Authority
DE
Germany
Prior art keywords
data
value
software
address
location
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE60305073T
Other languages
English (en)
Other versions
DE60305073D1 (de
Inventor
Per-Ola Robertsson
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Telefonaktiebolaget LM Ericsson AB
Original Assignee
Telefonaktiebolaget LM Ericsson AB
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Telefonaktiebolaget LM Ericsson AB filed Critical Telefonaktiebolaget LM Ericsson AB
Publication of DE60305073D1 publication Critical patent/DE60305073D1/de
Application granted granted Critical
Publication of DE60305073T2 publication Critical patent/DE60305073T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring

Description

  • HINTERGRUND DER ERFINDUNG
  • Gebiet der Erfindung
  • Die Erfindung bezieht sich auf das Testen von Software, und insbesondere auf ein Verfahren zum bidirektionale Sondieren (Erforschen) von Software.
  • Beschreibung des Standes der Technik
  • Unter Entwicklern von Software ist eine der wichtigsten Anforderungen bezüglich der Software, dass sie zuverlässig ist. Zuverlässigkeit verweist auf die Fähigkeit einer Software, für eine spezifizierte Zeitdauer in einer spezifizierten Umgebung ohne Fehler zu arbeiten. Um einen ausreichend hohen Grad von Zuverlässigkeit sicherzustellen, muss Software vor einer Freigabe gründlich getestet und fehlerfrei gemacht (debugged) werden. Siehe z.B. US-Patent 5,581,695, das eine Technik zur Fehlerbeseitigung in Software offenbart. Gewöhnlich wird das gesamte Softwareprogramm als ein ganzes getestet, ebenso wie die einzelnen Funktionskomponenten (z.B. Funktionsaufrufe, Unterprogramme), die das Softwareprogramm ausmachen. Typischerweise werden Testvektoren generiert, die eine Serie von Werten für die Variablen enthalten, die durch die Software und/oder eine oder mehr Funktionskomponenten davon verlangt werden. Die Variablenwerte werden gewählt, verschiedene Typen von Verwendungsbedingungen und Umgebungen darzustellen, in denen beabsichtigt ist, die Software laufen zu lassen. Die Testvektoren werden dann auf die Software und/oder die eine oder mehr Funktionskomponenten davon angewendet, und die Variablenwerte werden beobachtet und aufgezeichnet.
  • Ein Typ eines Tests, der häufig durchgeführt wird, wird Regressionsanalyse oder manchmal Verifizierungstest genannt. Regressionsanalyse involviert selektives erneutes Testen einer Software, die modifiziert wurde, um bekannte Probleme zu beseitigen. Das selektive erneute Testen wird durchgeführt um sicherzustellen, dass die identifizierten Probleme beseitigt wurden, und dass keine anderen zuvor arbeitenden Funktionskomponenten als ein Ergebnis der Reparaturen fehlgeschlagen sind. Dieser Typ von Test ist im wesentlichen eine Qualitätssteuermaßnahme um sicherzustellen, dass der modifizierte Code noch seinen spezifizierten Anforderungen entspricht und dass beliebiger unveränderter Code durch die Wartungsaktivität nicht beeinträchtigt wurde.
  • Ein wichtiges Merkmal bei Regressionsanalyse speziell und bei Softwaretest im allgemeinen ist die Fähigkeit, die Variablenwerte zu beobachten, die aus den Testvektoren resultieren. Frühere Versuche, die Variablenwerte einer Software und/oder der Funktionskomponenten davon zu beobachten, haben manuelles Setzen von Unterbrechungspunkten und anderen Fangstellen in dem Quellcode selbst einbezogen. In letzter Zeit enthalten Softwareentwicklungswerkzeuge, wie etwa Code Composer StudioTM von Texas Instruments und LabVIEWTM von National Instruments Softwaresondierungen (software probes), die in den im Test befindlichen Code eingefügt werden können. Die Softwaresondierungen erlauben, dass die Variablen in dem im Test befindlichen Code in Echtzeit beobachtet werden, während die Software ausgeführt wird. Diese letzteren Lösungen basieren jedoch nur auf dem Erhalt der Variablenwerte aus dem im Test befindlichen Code heraus (z.B. so, dass sie analysiert werden können). Sie erlauben nicht, dass die Variablenwerte während der Ausführung der Software geändert werden. Mit anderen Worten sind gegenwärtig existierende Softwaresondierungen nur Einbahn- oder unidirektionale Sondierungen dadurch, dass den Daten erlaubt wird, nur von dem im Test befindlichen Code zu dem Testsystem zu fließen. Sie erlauben nicht, dass die Richtung des Datentransfers umgekehrt wird, sodass Daten von dem Testsystem in den im Test befindlichen Code fließen.
  • Entsprechend wäre es wünschenswert, einen Weg vorzusehen, um Software auf eine Art und Weise derart zu sondieren, dass Daten sowohl aus dem als auch in den im Test befindlichen Code transferiert werden können.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Die Erfindung wird durch die Ansprüche definiert.
  • Kurz gesagt richtet sich die vorliegende Erfindung auf bidirektionales Sondieren von Software. Das bidirektionale Sondieren der vorliegenden Erfindung ist zum Transferieren von Daten zu und von einer im Test befindlichen Software fähig. Dieser Zweiwegtransfer von Daten erlaubt, dass die Variablen in der Software nicht nur überwacht, sondern auch geändert werden je nach Erfordernis. Testvektoren können entwickelt und in die Software eingefügt werden, während sie für Testzwecke läuft. Durch Verwenden von Daten von vorherigen Iterationen als eine Eingabe für die nächsten Iterationen wird Regressionsanalyse leichter gemacht.
  • Im allgemeinen richtet sich die Erfindung in einer Ausführungsform auf ein Verfahren zum Testen von Software mit einer Vielzahl von Datenvariablen und Funktionsargumenten darin. Das Verfahren umfasst Ausführen der Software, Identifizieren einer Adressstelle für mindestens eine der Variablen oder Argumente, die durch die Software verwendet werden, und Ausge ben beliebiger Daten, die in der Adressstelle gespeichert sind, zu einem Testsystem, um dadurch die Daten zu überwachen. Daten von dem Testsystem werden dann in die Adressstelle eingegeben, um dadurch beliebige Daten zu ersetzen, die zuvor in der Adressstelle gespeichert sind.
  • Im allgemeinen richtet sich die Erfindung in einer anderen Ausführungsform auf eine Vorrichtung zum Testen von Software mit einer Vielzahl von Datenvariablen und Funktionsargumenten darin. Die Vorrichtung umfasst eine zentrale Verarbeitungseinheit, und eine Speichereinheit, die mit der zentralen Verarbeitungseinheit verbunden ist. Die Speichereinheit speichert computerlesbare Instruktionen zum Instruieren der zentralen Verarbeitungseinheit, die Software auszuführen, eine Adressstelle für mindestens eine der Variablen oder Argumente, die durch die Software verwendet werden, zu identifizieren, beliebige Daten, die in der Adressstelle gespeichert sind, zu der zentralen Verarbeitungseinheit auszugeben, um dadurch die Daten zu überwachen, und Daten von der zentralen Verarbeitungseinheit in die Adressstelle einzugeben, um dadurch beliebige Daten zu ersetzen, die zuvor in der Adressstelle gespeichert sind.
  • Im allgemeinen richtet sich die Erfindung in noch einer anderen Ausführungsform auf ein System zum Testen von Software mit einer Vielzahl von Datenvariablen und Funktionsargumenten darin. Das System umfasst eine im Test befindliche Einrichtung, die konfiguriert ist, die Software auszuführen, einschließlich einer oder mehr Sondierungsinstruktionen in der Software, und einen Tester, der mit der im Test befindlichen Einrichtung verbunden ist. Der Tester ist konfiguriert, die im Test befindliche Einrichtung zu steuern, sodass wenn eine Sondierungsinstruktion ausgeführt wird, die im Test befindliche Einrichtung: eine Adressstelle für mindestens eine der Variablen oder Argumente, die durch die Software verwendet werden, identifizieren wird; beliebige Daten, die in der Adressstelle gespeichert sind, zu dem Tester ausgeben wird; und Daten, die von dem Tester empfangen werden, in die Adressstelle eingeben wird.
  • Es sollte betont werden, dass der Begriff umfasst/umfassend, wenn in dieser Spezifikation verwendet, genommen wird, um das Vorhandensein von angegebenen Merkmalen, ganzen Zahlen, Schritten oder Komponenten zu spezifizieren, aber das Vorhandensein oder Hinzufügen von einem oder mehr anderen Merkmalen, ganzen Zahlen, Schritten, Komponenten oder Gruppen davon nicht ausschließt.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Ein besseres Verständnis der Erfindung kann durch Verweis auf die folgende detaillierte Beschreibung erhalten werden, wenn in Verbindung mit den begleitenden Zeichnungen aufgenommen, worin:
  • 1 eine beispielhafte Softwaretestumgebung gemäß Ausführungsformen der Erfindung unter Verwendung analoger Hardwarekomponenten veranschaulicht;
  • 2A2D beispielhafte Betriebsmodi der bidirektionalen Softwaresondierung gemäß Ausführungsformen der Erfindung unter Verwendung analoger Hardwarekomponenten veranschaulichen;
  • 3 ein beispielhaftes System veranschaulicht, in dem die bidirektionale Softwaresondierung gemäß Ausführungsformen der Erfindung implementiert werden kann;
  • 4 ein anderes beispielhaftes System veranschaulicht, in dem die bidirektionale Softwaresondierung gemäß Ausführungsformen der Erfindung implementiert werden kann; und
  • 5 ein beispielhaftes Verfahren zum Implementieren der bidirektionalen Softwaresondierung gemäß Ausführungsformen der Erfindung veranschaulicht.
  • DETAILLIERTE BESCHREIBUNG DER ERFINDUNG
  • Es folgt eine detaillierte Beschreibung der Erfindung mit Bezug auf die Zeichnungen, in denen gleiche Bezugszeichen für die gleichen und ähnlichen Elemente genommen werden.
  • Ausführungsformen der Erfindung sehen ein Verfahren und ein System zum Testen von Software unter Verwendung von bidirektionalen Sondierungen vor. Die bidirektionalen Sondierungen der Erfindung können in den Programmcode in im wesentlichen einer beliebigen Stelle eingefügt werden. Die Sondierungen erlauben, dass Daten abgefangen werden von der ebenso wie eingefügt werden in die Software. Speziell erlauben die Sondierungen, dass die Werte der Variablen in der Software während der Ausführung überwacht, geändert und zurück in die Software eingefügt werden. Die Software wird dann weiter mit den geänderten Werten ausgeführt. Die bidirektionalen Sondierungen der Erfindung können als ein Merkmal oder eine Funktion in einem Softwareentwicklungswerkzeug, wie etwa Code Composer StudioTM von Texas Instruments und LabVIEWTM von National Instruments, oder anderen ähnlichen Softwareentwicklungsumgebungen implementiert werden.
  • Die bidirektionale Softwaresondierungstechnik der vorliegenden Erfindung ist in etwa analog zu dem Testen einer Hardware-Schaltungsplatine. Deshalb wird die Erfindung anfänglich im Sinne eines Testsystems für eine Hardware-Schaltungsplatine beschrieben. Diese Beschreibung ist jedoch nur für veranschaulichende Zwecke vorgesehen, da sich die Erfindung tatsächlich auf die Sondierung von Software richtet.
  • 1 veranschaulicht ein Hardwaretestsystem 100, das dem Softwaretestwerkzeug analog ist, in dem die bidirektionale Sondierungstechnik der vorliegenden Erfindung verwendet werden kann. Das Hardwaretestsystem 100 ist mit einer in Test befindlichen Einrichtung (DUT, device under test) 102 über eine Vielzahl von Hardwaresondierungen verbunden, von denen eine in 104 angezeigt wird. Jede Hardwaresondierung 104 kann durch ihre Sondierungs-ID identifiziert werden. Z.B. ist die erste Sondierung PID 1, die zweite Sondierung ist PID 2, die dritte Sondierung ist PID 3 usw. Die Sondierungen 104 sind mit einer Seite eines Kreuzungsschaltungsbehälters 106 verbunden, dessen andere Seite mit einem oder mehr Funktionsgeneratoren 108, wie etwa Wellenformgeneratoren, und einer oder mehr Messeinheiten 110, wie etwa Oszilloskopen und Wellenmessgeräten, verbunden ist. Der Kreuzungsschaltungsbehälter 106 ermöglicht, dass die Sondierungen 104 selektiv verbunden werden mit und getrennt werden von den Funktionsgeneratoren 108 und den Messeinheiten 110 des Testsystems 100. Eine Steuervorrichtung (nicht ausdrücklich gezeigt) in dem Testsystem 100 stellt ein Steuersignal bereit, das die Konnektivität des Kreuzungsschaltungsbehälters 106 steuert.
  • Wie gesehen werden kann, sind die Sondierungen 104 strategisch platziert um zu erlauben, dass die elektrischen Signale in gewissen Punkten von Interesse in der DUT 102 untersucht werden. Z.B. ist die erste Sondierung PID 1 in dem Eingang von Func2 platziert um zu erlauben, dass ein elektrisches Signal "a" untersucht wird. Gleichermaßen ist die zweite Sondierung PID 2 in dem Eingang von Func1 platziert um zu erlauben, dass ein elektrisches Signal "b" untersucht wird. Die fünfte Sondierung PID 5 ist jedoch in dem Ausgang von Func1 platziert um zu erlauben, dass ein elektrisches Signal "d" untersucht wird. Die verschiedenen Funktionen (d.h. Func 1–3) können eine beliebige Funktion sein, die durch die DUT durch geführt werden kann (d.h. Addieren, Subtrahieren, Mittelwertbildung etc.). Einige Funktionen können eine oder mehr interne und/oder Unterfunktionen darin haben, die auch getestet werden können. Z.B. hat Func3 eine Unterfunktion "f", die darin enthalten ist, die untersucht werden kann. Auf eine ähnliche Art und Weise zu dem beschriebenen erlaubt die bidirektionale Sondierung der vorliegenden Erfindung, gewisse Variablen von Interesse in der Software zu untersuchen.
  • Der Verbindungspunkt jeder Sondierung 104 mit der DUT ist analog zu einer typischen Drahtpaarverbindung, die in einem gestrichelten Kreis gezeigt wird, der durch 112 angezeigt wird. Wie gesehen werden kann, führt ein Draht 114 des Drahtpaares 112 von der DUT 102 zu dem Kreuzungsschaltungsbehälter 106, während der andere Draht 116 des Drahtpaares 112 von dem Kreuzungsschaltungsbehälter 106 zurück zu der DUT 102 führt. Ähnlich ist der Verbindungspunkt jeder Sondierung 104 zu dem Kreuzungsschaltungsbehälter 106 analog zu einem Paar von Schaltern, die in dem gestrichelten Kreis gezeigt werden, der durch 118 angezeigt wird. Der eingehende (inbound) Schalter, der bei 120 angezeigt wird, verbindet selektiv den eingehenden Draht 114 einer Sondierung 104 mit dem Testersystem 100 (z.B. mit einer Messeinheit). Der ausgehende (outbound) Schalter, der bei 122 angezeigt wird, verbindet selektiv den zurückführenden Draht 116 einer Sondierung 104 mit entweder dem eingehenden Draht 114 (z.B. für einen normalen Betrieb) oder mit dem Testersystem 100 (z.B. mit einem Funktionsgenerator). Die verschiedenen Betriebsmodi der Schalter werden nachstehend detaillierter beschrieben.
  • Bezug nehmend nun auf 2A2D werden die Basisbetriebsmodi der Schalter, die die Sondierungen mit dem Kreuzungsschaltungsbehälter verbinden, gezeigt. Diese Betriebsmodi veranschaulichen grafisch die Funktionsfähigkeit der Softwaresondierung der vorliegenden Erfindung. In dem ersten Betriebs modi, der in 2A gezeigt wird, sind sowohl der eingehende Schalter 120 als auch der ausgehende Schalter 122 von dem Kreuzungsschaltungsbehälter 106 getrennt und sind stattdessen miteinander verbunden. Dies ist der normale Betriebsmodus, wo Daten weder von der DUT 102 in das Testsystem 100 noch von dem Testsystem 100 in die DUT 102 fließen. In dem zweiten Betriebsmodus, der in 2B gezeigt wird, verbindet der eingehende Schalter 120 die DUT 102 mit dem Testsystem 100, während der ausgehende Schalter 122 noch mit dem eingehenden Schalter 120 verbunden ist (d.h. von dem Testsystem getrennt ist). Dieser Betriebsmodus wird verwendet, um Daten von der DUT 102 für Überwachungszwecke zu erhalten. In dem dritten Betriebsmodus, der in 2C gezeigt wird, ist der ausgehende Schalter 122 mit dem Testsystem 100 verbunden, während der eingehende Schalter 120 von dem Testsystem 100 getrennt ist. Dieser Betriebsmodus wird zum Einführen von Daten von dem Testsystem 100 in die DUT 102 für Testzwecke verwendet. In dem vierten Betriebsmodus, der in 2D gezeigt wird, sind sowohl der eingehende Schalter 120 als auch der ausgehende Schalter 122 mit dem Testsystem 100 verbunden. Dieser Betriebsmodus wird verwendet, um Daten von der DUT 102 für Überwachungszwecke zu erhalten ebenso wie zum Einfügen von Daten in die DUT 102 für Testzwecke. Auf eine ähnliche Art und Weise kann die bidirektionale Sondierung der vorliegenden Erfindung verwendet werden, um Daten von den Variablen und Argumenten eines im Test befindlichen Softwareprogramms zu erhalten, Daten in diese Variablen und Argumente einzugeben oder beides.
  • Nachstehend wird ein beispielhafter Block von Programmcode in einem Beispiel 1 gezeigt, der bidirektionale Sondierungsinstruktionen gemäß Ausführungsformen der Erfindung enthält. Wie gesehen werden kann, ist der Block von Programmcode in Pseudocode geschrieben und nicht in irgendeiner bestimmten Programmiersprache, um das generische Wesen und die Anwend barkeit der bidirektionalen Sondierung zu betonen. In dem Beispiel ist Func0 der im Test befindliche Code und ist analog zu der DUT 102 von 1. Die "Sondierungs"-Instruktionen sind analog zu den Hardwaresondierungen PID 1–5 von 1, und enthalten typischerweise einen Sondierungs-ID ebenso wie eine Angabe der Variable oder des Argumentes, die zu sondieren sind, als Argumente. Z.B. verweist "probe (1, c)" auf den ersten Sondierungs-PID 1 und beeinflusst die Adressstelle entsprechend der Variable "c" in dem im Test befindlichen Code. Somit erlaubt die Sondierungsinstruktion "probe(1,c)", dass die Variable "c" in dem Block von Programmcode überwacht und geändert wird je nach Erfordernis. Gleichermaßen erlaubt die Sondierungsinstruktion "probe(4,a)", dass die Variable "a" überwacht und geändert wird je nach Erfordernis usw.
  • Beispiel 1
    Figure 00100001
  • Figure 00110001
  • Es wird vermerkt, dass Func3 eine Unterfunktion "f"' hat, Eingaben zu der Variablen "a "'-"d "' sind und die Ausgabe von der eine Variable "e "' ist, entsprechend jeweils Variablen "a"-"d" und "h" von Func0. Unterfunktionen können auch unter Verwendung der bidirektionalen Sondierungstechnik der vorliegenden Erfindung untersucht werden.
  • Durch Hinzufügen der Sondierungsinstruktionen zu dem im Test befindlichen Code kann die Software beobachtet und deshalb getestet werden. Es können ein beliebiger Typ einer Variable (z.B. automatisch (zeitweilig auf dem Stack gespeichert), global, statisch etc.) oder beliebige gespeicherte Variablen untersucht werden, solange wie sie in dem Adressraum der Sondierung sind, wie durch die Variable in der Sondierungsinstruktion angezeigt wird. Es ist auch möglich, Funktionsargumente unter Verwendung der bidirektionalen Sondierung der vorliegenden Erfindung zu untersuchen. Sondierung der Variablen und Funktionsargumente macht es möglich, die Funktionalität der Software weiter zu testen. Speziell erlaubt Sondierung der Variablen und Argumente einer Funktion, dass zusätzliche Tests und Testvektoren basierend auf den erhaltenen Daten entwickelt werden.
  • In dem Block von Quellcode, der in dem nachstehenden Beispiel 2 gezeigt wird, kann eine beispielhafte C-Code-Version der Sondierungsinstruktionen gesehen werden. Dieses Beispiel ist vorgesehen um zu veranschaulichen, wie ein tatsächlicher Block von Quellcode unter Verwendung von Ausführungsformen der Erfindung aussehen kann.
  • Beispiel 2
    Figure 00120001
  • Die bidirektionale Sondierungstechnik der vorliegenden Erfindung kann in einem beliebigen Testsystem implementiert werden. 3 zeigt ein beispielhaftes Testsystem 300 zum Implementieren der bidirektionalen Sondierungstechnik. Das Testsystem 100 enthält einen Tester 302 und eine im Test befindliche Einrichtung 304, die miteinander in Kommunikation sind. Der Tester 302 ist ein typischer Computer, der eine Zahl von Funktionskomponenten hat, einschließlich einer CPU 306, einer Eingabe-/Ausgabeschnittstelleneinheit 308 und einer Speichereinheit 310. Diese Komponenten sind einem Durchschnittsfachmann in der Computertechnik gut bekannt und werden deshalb hier nur kurz beschrieben. Die CPU 306 behandelt die Ausführung aller Softwareprogramme in dem Tester 302, einschließlich des Betriebssystems und beliebiger Software, die darauf läuft. Die Schnittstelleneinheit 308 dient dazu, den Tester 302 mit der im Test befindlichen Einrichtung 304 in Verbin dung zu bringen, ebenso wie beliebige Eingabe-/Ausgabeeinrichtungen (z.B. Tastatur, Maus, Anzeigeeinheit, Drucker etc.), die dazu verbunden sind. Die Speichereinheit 310 stellt einen zeitweiligen Speicher (z.B. RAM) und/oder einen Langzeitspeicher (z.B. Festplatte) für beliebige Softwareprogramme und/oder Daten bereit, die für die Ausführung des Betriebssystems und der Software, die auf dem Tester 302 läuft, benötigt werden können.
  • In der Speichereinheit 310 ist eine Reihe von Softwareanwendungen gespeichert, einschließlich eines Softwareentwicklungswerkzeugs 312. Das Softwareentwicklungswerkzeug 312 arbeitet auf die gleiche Weise und hat viele der gleichen Merkmale wie existierende Softwareentwicklungswerkzeuge, wie etwa Code Composer StudioTM von Texas Instruments und LabVIEWTM von National Instruments, oder andere ähnliche Softwareentwicklungswerkzeuge. In Übereinstimmung mit Ausführungsformen der Erfindung enthält jedoch das Softwareentwicklungswerkzeug 312 ferner ein Sondierungssteuerungs- und Analysemodul 314. Das Sondierungssteuerungs- und Analysemodul 314 ist zum Steuern der bidirektionalen Sondierung beliebiger Software, die getestet wird, unter Verwendung des Softwareentwicklungswerkzeugs 312, und Analysieren der Daten, die untersucht werden, fähig. Speziell erlaubt das Sondierungssteuerungs- und Analysemodul 314, dass Daten von dem im Test befindlichen Code abgefangen, in den im Test befindlichen Code eingeführt oder beides werden, wie durch einen Benutzer bestimmt wird. Das Sondierungssteuerungs- und Analysemodul 314 erlaubt dem Benutzer auch, Testvektoren basierend auf den erhaltenen Daten zu generieren und die Testvektoren zurück in den im Test befindlichen Code einzuführen. Dies macht es für den Benutzer leichter und bequemer, die Operation und Zuverlässigkeit des im Test befindlichen Codes zu überwachen und zu testen.
  • In der vorliegenden Ausführungsform wird der im Test befindliche Code, einschließlich der bidirektionalen Sondierungsinstruktionen, in einer getrennten Einheit ausgeführt, nämlich der im Test befindlichen Einrichtung 304, die mit dem Tester 302 in Kommunikation ist. Die im Test befindliche Einrichtung 304, wie der Tester 302, ist ein typischer Computer, der eine Reihe von Funktionskomponenten hat, einschließlich einer CPU 316, einer Eingabe-/Ausgabeschnittstelleneinheit 318 und einer Speichereinheit 320. Die Komponenten der im Test befindlichen Einrichtung 304 sind in der Funktion ihren Gegenstücken in dem Tester 302 ähnlich und werden deshalb hier nicht beschrieben. Der Hauptpunkt besteht darin, dass der im Test befindliche Code 322, einschließlich des untersuchten Quellcodes und der bidirektionalen Sondierungsinstruktionen und Implementierung, gespeichert und getrennt von dem Tester 302 ausgeführt wird. (Siehe die Beispielblöcke von Quellcode oben für die Beispiele von Sondierungsinstruktionen.)
  • In einigen Ausführungsformen sind jedoch der Tester und die im Test befindliche Einrichtung als ein einzelnes integriertes Testsystem implementiert, das beide Funktionen durchführt. 4 veranschaulicht ein Beispiel eines derartigen Testsystems 400. Das integrierte Testsystem 400 hat eine Reihe von Funktionskomponenten, einschließlich einer CPU 402, einer Eingabe-/Ausgabeschnittstelle 404 und einer Speichereinheit 406. Diese Komponenten sind ihren mit Bezug auf 3 beschriebenen Gegenstücken ähnlich, mit Ausnahme dessen, dass die Speichereinheit 406 sowohl ein Softwareentwicklungswerkzeug 408 als auch einen im Test befindlichen Code 410 darin gespeichert hat. Somit hat das Testsystem 400 vorzugsweise ausreichenden Speicher und Verarbeitungsfähigkeit, um sowohl das Softwareentwicklungswerkzeug 408 als auch den im Test befindlichen Code 410 zur gleichen Zeit auszuführen (d.h. Multitasking). Das Softwareentwicklungswerkzeug 408 ist im wesentlichen das gleiche wie das oben beschriebene Soft wareentwicklungswerkzeug 312, einschließlich eines Sondierungssteuerungs- und Analysemoduls (nicht ausdrücklich gezeigt). Gleichermaßen ist der im Test befindliche Code 410 im wesentlichen der gleiche wie der im Test befindliche Code 322, der oben beschrieben wird, einschließlich des untersuchten Quellcodes und der Sondierungsinstruktionen und Implementierung.
  • Die Ausführung einer bidirektionalen Sondierungsinstruktion wird in dem beispielhaften Verfahren 500 von 5 gemäß Ausführungsformen der Erfindung veranschaulicht. Ein derartiges Verfahren 500 wird gewöhnlich in der im Test befindlichen Einrichtung implementiert, die den im Test befindlichen Code ausführt, oder einem integrierten Testersystem in einer Multitasking-Umgebung. In dem Verfahren 500 ist ein Block von Quellcode, der eine oder mehr Sondierungsinstruktionen enthält, im Prozess einer Ausführung. In einem gewissen Punkt während der Ausführung des Codes, Schritt 501, wird auf die Sondierungsinstruktionen getroffen. In dem nächsten Schritt, Schritt 502, wird eine Bestimmung bezüglich dessen durchgeführt, ob die Sondierung in den Sondierungsmodus gesetzt wurde. Der besondere Modus wird gewöhnlich durch einen Benutzer über den Tester von dem Softwareentwicklungswerkzeug 312 gesetzt, entweder als ein vorprogrammierter Befehl oder manuell, oder eine Kombination von beiden. Falls die Antwort ja ist, dann werden in dem dritten Schritt 503 die Daten innerhalb des Speichers oder Speicherbereichs, die durch die Sondierungsinstruktion angegeben werden, zu dem Testsystem übertragen, wo sie überwacht und analysiert werden können je nach Erfordernis. Falls nein, dann setzt das Verfahren 500 zu dem vierten Schritt 504 fort, wo eine Bestimmung bezüglich dessen durchgeführt wird, ob die Sondierung in den Einführungsmodus gesetzt wurde. Falls die Antwort ja ist, dann werden in dem fünften Schritt 505 die Daten in dem Speicher oder Speicherbereich, die durch die Sondierungsinstruktion angegeben wer den, überprüft und/oder ersetzt mit neuen Daten, die von dem Testsystem unter Verwendung z.B. einer einfachen Speicherkopie empfangen werden. Falls nein, dann setzt das Verfahren 500 mit der Ausführung des Rests des im Test befindlichen Codes fort.
  • Es wird vermerkt, dass das oben beschriebene Verfahren 500 eine vereinfachte Implementierung der Sondierungsinstruktion ist. In einigen Ausführungsformen werden zusätzlich zu einer Bestimmung des Sondierungsmodus der Typ der Daten ebenso wie ihre Größe verifiziert. Es ist auch möglich, kompliziertere Variablen zu untersuchen, wie etwa Felder oder sogar Variablen, die nicht in einer kontinuierlichen Struktur gespeichert sind. Auf diese Art und Weise können viele Typen von Daten abgefangen von der, ebenso wie eingefügt werden in die, Software, während sie getestet wird.
  • Während bestimmte Ausführungsformen und Anwendungen der vorliegenden Erfindung veranschaulicht und beschrieben wurden, ist zu verstehen, dass die Erfindung nicht auf den hierin offenbarten genauen Aufbau und die Zusammenstellungen begrenzt ist, und dass Modifikationen und Variationen an dem Vorangehenden durchgeführt werden können, ohne von dem Bereich der Erfindung abzuweichen, wie in den angefügten Ansprüchen definiert.

Claims (21)

  1. Ein Verfahren zum Testen von Software mit einer Vielzahl von Datenvariablen (a–h) und Funktionsargumenten darin, umfassend: Einfügen einer Sondierungsinstruktion in einen Quellcode der Software in einer vorbestimmten Stelle, wobei die Sondierungsinstruktion auf eine spezifische Datenvariable oder ein Funktionsargument verweist; und Ausführen der Software (322; 410); gekennzeichnet dadurch, dass die Sondierungsinstruktion konfiguriert sein kann, einen Wert, der in der referenzierten Variable oder Funktionsargument gespeichert ist, während Ausführung der Software (505) zu ersetzen und den Wert zu einem Testsystem (302; 400) auszugeben.
  2. Das Verfahren nach Anspruch 1, wobei Daten, die in eine Adressstelle eingegeben sind, um den Wert zu ersetzen, eine überarbeitete Version der Daten sind, die als der Wert zu dem Testsystem von der Adressstelle ausgegeben werden.
  3. Das Verfahren nach Anspruch 1, wobei Daten, die in eine Adressstelle eingegeben sind, um den Wert zu ersetzen, die gleichen wie die Daten sind, die als der Wert zu dem Testsystem von der Adressstelle ausgegeben werden.
  4. Das Verfahren nach Anspruch 1, wobei Daten, die in eine Adressstelle eingegeben sind, um den Wert zu ersetzen, basierend auf den Daten generiert werden, die als der Wert zu dem Testsystem von der Adressstelle während einer vorherigen Iteration ausgegeben werden.
  5. Das Verfahren nach Anspruch 1, wobei Daten, die in eine Adressstelle eingegeben sind, um den Wert zu ersetzen, einen Testvektor von Daten umfassen, der basierend auf Daten generiert wird, die als der Wert zu dem Testsystem von der Adressstelle während einer vorherigen Iteration ausgegeben werden.
  6. Das Verfahren nach einem beliebigen der Ansprüche 2–5, wobei die Adressstelle eine Speicherstelle in einem Computerspeicher (320, 406) identifiziert.
  7. Das Verfahren nach einem beliebigen der Ansprüche 2–5, wobei die Adressstelle eine Speicherstelle in einer Festplatte identifiziert.
  8. Eine Einrichtung zum Testen von Software mit einer Vielzahl von Datenvariablen (a–h) und Funktionsargumenten darin, umfassend: eine zentrale Verarbeitungseinheit (306; 402); eine Speichereinheit (320; 406), die mit der zentralen Verarbeitungseinheit verbunden ist, wobei die Speichereinheit computerlesbare Instruktionen zum Instruieren der zentralen Verarbeitungseinheit speichert, um: die Software auszuführen, einschließlich einer Sondierungsinstruktion in einer vorbestimmten Stelle in einem Quellcode (322; 410) der Software, wobei die Sondierungs instruktion auf eine spezifische Datenvariable oder ein Funktionsargument verweist; gekennzeichnet dadurch, dass die Sondierungsinstruktion konfiguriert sein kann, einen Wert, der in der referenzierten Variable oder dem Funktionsargument gespeichert ist, während Ausführung der Software zu ersetzen und den Wert zu einem Testsystem (302; 400) auszugeben.
  9. Die Vorrichtung nach Anspruch 8, wobei Daten, die in eine Adressstelle eingegeben sind, um den Wert zu ersetzen, eine überarbeitete Version der Daten sind, die als der Wert zu dem Testsystem von der Adressstelle ausgegeben werden.
  10. Die Vorrichtung nach Anspruch 8, wobei Daten, die in eine Adressstelle eingegeben sind, um den Wert zu ersetzen, die gleichen wie die Daten sind, die als der Wert zu dem Testsystem von der Adressstelle ausgegeben werden.
  11. Die Vorrichtung nach Anspruch 8, wobei Daten, die in eine Adressstelle eingegeben sind, um den Wert zu ersetzen, basierend auf Daten generiert werden, die als der Wert zu dem Testsystem von der Adressstelle während einer vorherigen Iteration ausgegeben werden.
  12. Die Vorrichtung nach Anspruch 8, wobei Daten, die in eine Adressstelle eingegeben sind, um den Wert zu ersetzen, einen Testvektor von Daten umfassen, der basierend auf Daten generiert wird, die als der Wert zu dem Testsystem von der Adressstelle während einer vorherigen Iteration ausgegeben werden.
  13. Die Vorrichtung nach einem beliebigen der Ansprüche 9–12, wobei die Adressstelle eine Speicherstelle in einem Computerspeicher (320, 406) identifiziert.
  14. Die Vorrichtung nach einem beliebigen der Ansprüche 9–12, wobei die Adressstelle einer Speicherstelle in einer Festplatte identifiziert.
  15. Ein System zum Testen von Software mit einer Vielzahl von Datenvariablen (a–h) und Funktionsargumenten darin, umfassend: eine Einrichtung in der Prüfung (304), die konfiguriert ist, die Software auszuführen, einschließlich einer oder mehr Sondierungsinstruktionen in einem Quellcode (322) der Software, wobei die eine oder mehr Sondierungsinstruktionen auf spezifische Datenvariablen oder Funktionsargumente verweist; gekennzeichnet durch einen Tester (302), der mit der Einrichtung in der Prüfung (304) verbunden ist, wobei der Tester konfiguriert ist, die Einrichtung in der Prüfung so zu steuern, dass wenn eine Sondierungsinstruktion ausgegeben wird, die Einrichtung in der Prüfung: einen Wert, der in den referenzierten Variablen oder Funktionsargumenten gespeichert ist, während Ausführung der Software ersetzen und den Wert zu dem Tester ausgeben wird, abhängig von einer Konfiguration der einen oder mehr Sondierungsinstruktionen.
  16. Das System nach Anspruch 15, wobei die Daten, die in eine Adressstelle eingegeben sind, um den Wert zu ersetzen, eine überarbeitete Version der Daten sind, die als der Wert zu dem Testsystem von der Adressstelle ausgegeben werden.
  17. Das System nach Anspruch 15, wobei die Daten, die in eine Adressstelle eingegeben sind, um den Wert zu ersetzen, die gleichen wie die Daten sind, die als der Wert zu dem Testsystem von der Adressstelle ausgegeben werden.
  18. Das System nach Anspruch 15, wobei die Daten, die in eine Adressstelle eingegeben sind, um den Wert zu ersetzen, basierend auf Daten generiert werden, die von der Adressstelle während einer vorherigen Iteration ausgegeben werden.
  19. Das System nach Anspruch 15, wobei die Daten, die in eine Adressstelle eingegeben sind, um den Wert zu ersetzen, einen Testvektor von Daten umfassen, der basierend auf Daten generiert wird, die als der Wert zu dem Testsystem von der Adressstelle während einer vorherigen Iteration ausgegeben werden.
  20. Das System nach einem beliebigen der Ansprüche 16–19, wobei die Adressstelle eine Speicherstelle in einem Computerspeicher (320, 406) identifiziert.
  21. Das System nach einem beliebigen der Ansprüche 16–19, wobei die Adressstelle eine Speicherstelle in einer Festplatte identifiziert.
DE60305073T 2002-09-23 2003-09-22 Bidirektionale sondierung von software Expired - Lifetime DE60305073T2 (de)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US428733 1999-10-28
US41283402P 2002-09-23 2002-09-23
US412834P 2002-09-23
US10/428,733 US8020148B2 (en) 2002-09-23 2003-05-01 Bi-directional probing and testing of software
PCT/EP2003/010492 WO2004027623A2 (en) 2002-09-23 2003-09-22 Bi-directional probing of software

Publications (2)

Publication Number Publication Date
DE60305073D1 DE60305073D1 (de) 2006-06-08
DE60305073T2 true DE60305073T2 (de) 2006-09-28

Family

ID=31998143

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60305073T Expired - Lifetime DE60305073T2 (de) 2002-09-23 2003-09-22 Bidirektionale sondierung von software

Country Status (9)

Country Link
US (2) US8020148B2 (de)
EP (1) EP1576477B1 (de)
JP (1) JP4959941B2 (de)
KR (1) KR100976371B1 (de)
CN (1) CN1701305B (de)
AT (1) ATE325383T1 (de)
AU (1) AU2003267394A1 (de)
DE (1) DE60305073T2 (de)
WO (1) WO2004027623A2 (de)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6823478B1 (en) * 2000-09-12 2004-11-23 Microsoft Corporation System and method for automating the testing of software processing environment changes
US7350194B1 (en) 2001-09-24 2008-03-25 Oracle Corporation Techniques for debugging computer programs involving multiple computing machines
US7793271B2 (en) * 2004-06-17 2010-09-07 State Of Oregon Acting By And Through The State Board Of Higher Education On Behalf Of Portland State University Bi-directional product development process simulation
US20060130048A1 (en) * 2004-12-13 2006-06-15 Ebay Inc. Shared schema for software user interface designers and developers
US7568186B2 (en) * 2005-06-07 2009-07-28 International Business Machines Corporation Employing a mirror probe handler for seamless access to arguments of a probed function
US20070074175A1 (en) * 2005-09-23 2007-03-29 Telefonaktiebolaget L M Ericsson (Publ) Method and system for dynamic probes for injection and extraction of data for test and monitoring of software
CN100388195C (zh) * 2006-02-22 2008-05-14 北京金山软件有限公司 一种64位视窗操作系统下获取函数参数的方法及系统
US8359585B1 (en) * 2007-01-18 2013-01-22 Advanced Testing Technologies, Inc. Instrumentation ATS/TPS mitigation utilizing I/O data stream
EP1962194A1 (de) * 2007-02-23 2008-08-27 Telefonaktiebolaget LM Ericsson (publ) Verfahren und System zur dynamischen Sondenauthentifizierung zum Testen und Überwachen von Software
US8500730B2 (en) * 2007-11-16 2013-08-06 Biosense Webster, Inc. Catheter with omni-directional optical tip having isolated optical paths
US8413120B2 (en) 2008-10-27 2013-04-02 Advanced Micro Devices, Inc. Method and system for thread monitoring
CN102023923B (zh) * 2010-12-28 2014-07-02 北京邮电大学 一种基于别名分析技术的软件测试方法
GB2507048A (en) * 2012-10-16 2014-04-23 Bae Systems Plc System testing algorithm and apparatus
US9021428B2 (en) * 2013-05-29 2015-04-28 Microsoft Technology Licensing, Llc Troubleshooting visuals and transient expressions in executing applications
CN103455421B (zh) * 2013-08-19 2016-08-10 西安交通大学 基于程序控制依赖引导的回归测试案例生成方法
US9880818B2 (en) * 2014-11-05 2018-01-30 Ab Initio Technology Llc Application testing
US10936289B2 (en) 2016-06-03 2021-03-02 Ab Initio Technology Llc Format-specific data processing operations

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5191646A (en) * 1986-11-20 1993-03-02 Hitachi, Ltd. Display method in software development support system
US5581695A (en) 1990-05-09 1996-12-03 Applied Microsystems Corporation Source-level run-time software code debugging instrument
US5604841A (en) * 1990-07-06 1997-02-18 United Technologies Corporation Hierarchical restructuring generic test templates and reusable value spaces for machine failure isolation using qualitative physics
US5202955A (en) * 1990-07-06 1993-04-13 United Technologies Corporation Dynamic assumption ordering for qualitative physics
US5317740A (en) * 1991-03-07 1994-05-31 Digital Equipment Corporation Alternate and iterative analysis of computer programs for locating translatable code by resolving callbacks and other conflicting mutual dependencies
DE69231873T2 (de) * 1992-01-08 2002-04-04 Emc Corp Verfahren zur Synchronisierung von reservierten Bereichen in einer redundanten Speicheranordnung
JPH0756729A (ja) 1993-08-10 1995-03-03 Pfu Ltd プログラムデバッグシステム
US5604895A (en) * 1994-02-22 1997-02-18 Motorola Inc. Method and apparatus for inserting computer code into a high level language (HLL) software model of an electrical circuit to monitor test coverage of the software model when exposed to test inputs
EP0690378A1 (de) * 1994-06-30 1996-01-03 Tandem Computers Incorporated Werkzeug und Verfahren zur Fehlerdiagnose und -korrektur in einem Rechnerprogramm
US5634127A (en) * 1994-11-30 1997-05-27 International Business Machines Corporation Methods and apparatus for implementing a message driven processor in a client-server environment
US6324683B1 (en) * 1996-02-23 2001-11-27 International Business Machines Corporation System, method and program for debugging external programs in client/server-based relational database management systems
GB9622684D0 (en) 1996-10-31 1997-01-08 Sgs Thomson Microelectronics An integrated circuit device and method of communication therwith
US6282701B1 (en) * 1997-07-31 2001-08-28 Mutek Solutions, Ltd. System and method for monitoring and analyzing the execution of computer programs
US6202199B1 (en) * 1997-07-31 2001-03-13 Mutek Solutions, Ltd. System and method for remotely analyzing the execution of computer programs
US6212650B1 (en) 1997-11-24 2001-04-03 Xilinx, Inc. Interactive dubug tool for programmable circuits
US7152027B2 (en) * 1998-02-17 2006-12-19 National Instruments Corporation Reconfigurable test system
US5963726A (en) * 1998-03-20 1999-10-05 National Instruments Corporation Instrumentation system and method including an improved driver software architecture
SE9801678L (sv) 1998-05-13 1999-11-14 Axis Ab Datorchip och datoranordning med förbättrad avlusningsförmåga
EP0992906B1 (de) * 1998-10-06 2005-08-03 Texas Instruments Inc. Vorrichtung und Verfahren für einen Software-Haltepunkt während eines Verzögerungsschlitzes
US6412106B1 (en) * 1999-06-16 2002-06-25 Intervoice Limited Partnership Graphical system and method for debugging computer programs
US6934934B1 (en) * 1999-08-30 2005-08-23 Empirix Inc. Method and system for software object testing
US6405364B1 (en) * 1999-08-31 2002-06-11 Accenture Llp Building techniques in a development architecture framework
JP2001147830A (ja) * 1999-11-19 2001-05-29 Nec Microcomputer Technology Ltd リアルタイムosの状態変更方法
US6304972B1 (en) * 2000-01-03 2001-10-16 Massachusetts Institute Of Technology Secure software system and related techniques
FR2820222B1 (fr) * 2001-01-26 2003-03-21 Schneider Automation Procede de programmation d'une application d'automatisme
US7917895B2 (en) * 2001-07-27 2011-03-29 Smartesoft, Inc. Automated software testing and validation system
US7539591B2 (en) * 2001-08-24 2009-05-26 Vi Technology, Inc. Enterprise test data management system utilizing hierarchical test data models and related methods
US7107578B1 (en) * 2001-09-24 2006-09-12 Oracle International Corporation Techniques for debugging computer programs involving multiple programming languages
US7047519B2 (en) * 2001-09-26 2006-05-16 International Business Machines Corporation Dynamic setting of breakpoint count attributes
US7134115B2 (en) * 2002-02-07 2006-11-07 Matsushita Electric Industrial Co., Ltd. Apparatus, method, and program for breakpoint setting
JP3764405B2 (ja) * 2002-05-27 2006-04-05 株式会社東芝 デバッグ装置及びデバッグ方法
US7124401B2 (en) * 2002-09-03 2006-10-17 Sap Aktiengesellschaft Testing versions of applications
US7219333B2 (en) * 2002-11-22 2007-05-15 Texas Instruments Incorporated Maintaining coherent synchronization between data streams on detection of overflow
US7111281B2 (en) * 2002-12-26 2006-09-19 International Business Machines Corporation Method, system, and article of manufacture for debugging utilizing screen pattern recognition and breakpoints
US7171653B2 (en) * 2003-06-03 2007-01-30 Hewlett-Packard Development Company, L.P. Systems and methods for providing communication between a debugger and a hardware simulator
US7299456B2 (en) * 2003-09-18 2007-11-20 International Business Machines Corporation Run into function

Also Published As

Publication number Publication date
US20110271256A1 (en) 2011-11-03
ATE325383T1 (de) 2006-06-15
JP4959941B2 (ja) 2012-06-27
US8020148B2 (en) 2011-09-13
EP1576477B1 (de) 2006-05-03
JP2006500695A (ja) 2006-01-05
DE60305073D1 (de) 2006-06-08
WO2004027623A3 (en) 2004-05-13
CN1701305B (zh) 2010-05-05
US20040059962A1 (en) 2004-03-25
CN1701305A (zh) 2005-11-23
KR20050073458A (ko) 2005-07-13
KR100976371B1 (ko) 2010-08-18
WO2004027623A2 (en) 2004-04-01
AU2003267394A1 (en) 2004-04-08
EP1576477A2 (de) 2005-09-21

Similar Documents

Publication Publication Date Title
DE60305073T2 (de) Bidirektionale sondierung von software
DE10010043C2 (de) Halbleitervorrichtung-Simulationseinrichtung und zugehörige Halbleitertestprogramm-Debugging-Einrichtung
Knab et al. Predicting defect densities in source code files with decision tree learners
DE69817689T2 (de) Modellbasiertes Diagnosesystem mit automatisierten Verfahren für Auswahl von folgendem Test
DE3625462A1 (de) Rechnerunterstuetzte fehlerisolation beim pruefen von gedruckten schaltungen
DE102014102551A1 (de) Maschine und Verfahren zum Evaluieren von fehlschlagenden Softwareprogrammen
DE3903835A1 (de) Verfahren und vorrichtung zum pruefen von mikroprozessorsystemen unter verwendung von speicheremulationstechniken
DE112006001222T5 (de) Halbleitertestprogramm-Diagnosevorrichtung
DE112007002970T5 (de) Prüfvorrichtung und Vorrichtungsschnittstelle
DE102005025744A1 (de) Verfahren und Vorrichtung zum automatisierten Testaufbau
DE102005026403B4 (de) Verfahren zum Liefern von Abtastmustern zu einer elektronischen Vorrichtung
DE112007002963T5 (de) Programm, Aufzeichnungsmedium, Prüfvorrichtung und Diagnoseverfahren
DE102021116906A1 (de) Test- und messsystem zur analyse von zu testenden vorrichtungen
DE10249667A1 (de) Graphische Benutzerschnittstelle zum Testen integrierter Schaltungen
DE112020007444T5 (de) Automatische Testeinrichtung, Prozess und Computerprogramm zum Testen eines oder mehrerer zu testender Geräte, wobei unterschiedliche Testaktivitäten Teilsätze von Ressourcen des zu testenden Geräts nutzen
DE112009000211T5 (de) Programmprüfvorrichtung und -programm
DE112021003677T5 (de) Automatisierte unterstützte schaltkreisvalidierung
EP1406173A2 (de) Verfahren zum Testen eines Softwaresystems für technische Anlagen
DE102007019072A1 (de) Verfahren, Code und Vorrichtung zum Protokollieren von Testergebnissen
DE102006040794A1 (de) Softwareprogramm mit alternativen Funktionsbibliotheken
DE112021001524T5 (de) Bestimmungsgerät, testsystem, bestimmungsverfahren und bestimmungsprogramm
DE10393511T5 (de) Programmentwicklungsunterstützungsvorrichtung, Programmausführungsvorrichtung, Kompilierverfahren und Diagnoseverfahren
DE60213786T2 (de) System und verfahren zur automatischen erfassung von aussagen in einer java-kompatibilitätsprüfumgebung
DE10101067A1 (de) Programmausführungssystem für ein Halbleiter-Prüfgerät
Santhanam Automating software module testing for FAA certification

Legal Events

Date Code Title Description
8364 No opposition during term of opposition