DE202012013449U1 - System für In-Line-Einfügung von Scriptabhängigkeiten - Google Patents

System für In-Line-Einfügung von Scriptabhängigkeiten Download PDF

Info

Publication number
DE202012013449U1
DE202012013449U1 DE202012013449.3U DE202012013449U DE202012013449U1 DE 202012013449 U1 DE202012013449 U1 DE 202012013449U1 DE 202012013449 U DE202012013449 U DE 202012013449U DE 202012013449 U1 DE202012013449 U1 DE 202012013449U1
Authority
DE
Germany
Prior art keywords
test
resource
dependencies
script
resources
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
DE202012013449.3U
Other languages
English (en)
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.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of DE202012013449U1 publication Critical patent/DE202012013449U1/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/44Encoding
    • G06F8/443Optimisation
    • G06F8/4441Reducing the execution time required by the program code
    • G06F8/4443Inlining

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Computergestütztes System für die in-line-Einfügung von Scriptabhängigkeiten, umfassend: einem oder mehreren Prozessoren (306); einen Testressourcenextraktor (120), ausgelegt zur Extrahierung von Testressourcen (122) adressiert in Sprache, welche eine Testwebseite (160) definiert; ein Markierungsmodul (140), ausgelegt zur Aufrechterhaltung von Markierungen (142) zur Identifizierung einer Position jeder einzelnen Testressource (122) innerhalb der Sprache, welche die Testseite (160) definiert. ein Ressourcenlader und Analysator (130), ausgelegt zum iterativen Laden externer Ressourcen (132) assoziiert mit einem Pfad jeder einzelnen Testressource (122), und ausgelegt, zum Analysieren jeder einzelnen Testressource (122), um ein oder mehrere dynamisch hinzugefügte Abhängigkeiten (152) zu identifizieren; und ein in-lining Einfügemodul (150), ausgelegt zum Ersetzen jeder einzelnen Markierung (142) durch externe Ressourcen (132) und Abhängigkeiten (152), die auf ihre respektive Markierung (142) referenzieren, um eine aktualisierte Sprache zu generieren, welche eine aktualisierte Testseite (160, 162) definiert, wobei der Testressourcenextraktor (120), das Markierungsmodul (140), der Ressourcenlader und Analysator (130) und das in-lining-Modul (150) auf einem oder mehreren Prozessoren (306) implementiert sind.

Description

  • TECHNISCHES GEBIET
  • Diese Offenlegung bezieht sich auf das Prüfen von Rahmenwerken, wie beispielsweise Skriptprüfungen. Unter Schutz gestellt werden und Gegenstand des Gebrauchsmusters sind dabei, entsprechend den Vorschriften des Gebrauchsmustergesetzes, lediglich Vorrichtungen wie in den beigefügten Schutzansprüchen definiert, jedoch keine Verfahren. Soweit nachfolgend in der Beschreibung gegebenenfalls auf Verfahren Bezug genommen wird, dienen diese Bezugnahmen lediglich der beispielhaften Erläuterung der in den beigefügten Schutzansprüchen unter Schutz gestellten Vorrichtung oder Vorrichtungen.
  • HINTERGRUND
  • Einheitenprüfung ist ein Verfahren, mit dem einzelne Einheiten von Quellcode (oder Skript) überprüft werden, um festzustellen, ob sie sich zur Nutzung eigenen. Beispielsweise kann eine Einheit der kleinste prüfbare Bestandteil einer Anwendung sein. In einem anderen Beispiel kann eine Einheit eine individuelle Funktion oder ein individuelles Verfahren sein. Einheitenprüfungen werden üblicherweise von Softwareentwickler geschrieben und ausgeführt, um sicherzustellen, dass Code sich wie geplant verhält, wenn er ausgeführt wird. Einheitenprüfungen werden üblicherweise unter Nutzung von Test-Rahmenwerken ausgeführt. Test-Rahmenwerke können zur Überprüfung einer Webseite verwendet werden, welche Skript enthält. Solche Überprüfungen der Webseite können Entwickler in die Lage versetzen, festzulegen, ob beispielsweise ein Script auf der Webseite ordnungsgemäß geladen und ausgeführt wird.
  • JsUnit ist ein Beispiel eines öffentlich zugänglichen Client-seitigen (oder Browser-seitigen) Einheiten-Testrahmenwerks für JavaScript. Eine Einheitenprüfung, welche das JsUnit-Rahmenwerk verwendet, bestimmt und ruft die erforderlichen Dateien (oder „Abhängigkeiten”) auf, welche Java Skript Code enthalten, damit eine Prüfung ordnungsgemäß ausgeführt wird. In einem ersten Ladeverfahren von Code-Abhängigkeiten in einen Browser kann das JsUnit-Prüfrahmenwerk einen Skripttag (zum Beispiel, ”<script>”) in dem Hypertext-Textmarkierungssprache(HTML)-Abschnitt einer Testseite setzen, um auf die Abhängigkeiten zu verweisen. In einem zweiten Verfahren kann das JsUnit-Prüftrahmenwerk dynamisch einen Script-Tag einfügen, welcher auf Abhängigkeiten verweist, wofür ein geladener Code verwendet wird. In einem dritten Verfahren, kann das JsUnit-Prüfrahmenwerk dynamisch Abhängigkeiten aus einem Server auslesen (beispielsweise, mittels einer iFrame- oder XMLHttp-Anfrage).
  • Jedes einzelne dieser Verfahren erfordert Server-, Netzwerk- und Browser-Ressourcen, was zu einer beträchtlich längeren Zeit für den Prüfaufbau führt. Wird die Anzahl der Prüfungen nicht trivial, nimmt die Prüfaufbauzeit bedingt durch den Aufwand an Ressourcen, im Browser und Server, welche erforderlich sind, um Testabhängigkeiten zu laden, zu. Darüber hinaus kann die tatsächliche Prüfungsausführungszeit bedingt durch verminderte Rechner- und Netzwerk-Ressourcen zu nehmen, was zu unangemessenen Prüfungsfehlschlägen führt. Das vorgenannte zweite und dritte Verfahren verbraucht jeweils ebenfalls Browserressourcen, was zu einer langsameren Prüfungsausführung führen kann und gelegentlich sogar zum Ausfall des Browsers.
  • Einige Prüfungs-Rahmenwerke können Abhängigkeiten auf einem Server zwischenspeichern oder sich auf den Zwischenspeicher des Browsers verlassen, um die Abhängigkeiten abzuspeichern. Zwischenspeicherung auf dem Server verringert lediglich die Zeit und die Ressourcen, die erforderlich sind, um die Abhängigkeiten an den Browser weiterzuleiten, erfordern dennoch eine Netzwerkverbindung und Browserressourcen. Weil darüber hinaus ein Browser-Zwischenspeicher inkonsistent ist, gewährleistet eine Zwischenspeicherung von Abhängigkeiten im Browser-Zwischenspeicher nicht, dass eine Skriptprüfung ordnungsgemäß und fehlerfrei abläuft.
  • KURZE ZUSAMMENFASSUNG
  • Ein Aspekt dieser Offenlegung bietet ein Verfahren für die in-line-Einfügung von Scriptabhängigkeiten, welches beinhaltet Extrahieren von Testressourcen, adressiert in einer Sprache, welche eine Testwebseite definiert, Platzieren von Markierungen, welche die Position jeder extrahierten Textressource innerhalb der Sprache, die die Testseite definiert, identifiziert, iteratives Aufrufen von externen Ressourcen, die mit einem Pfad jeder einzelnen Testresource assoziiert sind, analysieren jeder einzelner Testressource, um eine oder mehrere dynamisch hinzugefügte Abhängigkeiten zu identifizieren, und Ersetzen jeder Markierung durch externe Ressourcen und Abhängigkeiten, welche auf ihre entsprechende Markierung Bezug nehmen, um aktualisierte Sprache zu generieren, welche eine aktualisierte Test Webseite definiert. Das Verfahren beinhaltet darüber hinaus Hinzufügen jeder einzelnen identifizierten Abhängigkeit nach oder vor einer Top-Level Vorgängerressource, Durchführen des Analysierens und Hinzufügens, bis keine neue Abhängigkeiten mehr identifiziert werden, und Versehen jeder einzelnen neuen Abhängigkeit mit einer Referenz zu einer Vorgängermarkierung, welche mit der Top-Level Vorgängerressource assoziiert ist.
  • Auf diese Weise ermöglichen Implementierungen die in-line-Einfügung von Skriptabhängigkeiten, um die Belastung und Ausführungszeit einer Skriptprüfung zu verringern.
  • Die Details einer oder mehrerer Ausführungsformen der Offenlegung sind in den begleitenden Zeichnungen und der nachfolgenden Beschreibung dargelegt. Andere Merkmale, Objekte und Vorteile sind aus der Beschreibung und den Zeichnungen sowie aus den Ansprüchen ersichtlich.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Die Zeichnung, in der ein Element zum ersten Mal erscheint, ist normalerweise durch die Ziffer ganz links in der entsprechenden Bezugsnummer angegeben.
  • 1 zeigt ein beispielhaftes System für die in-line Einfügung von Scriptabhängigkeiten innerhalb von Testcode.
  • 2A zeigt eine beispielhaften Gesamtoperation einer Prüfmaschine.
  • 2B zeigt eine beispielhafte Operation, die von einer Prüfmaschine ausgeführt wird.
  • 3 zeigt einen beispielhaften Computer, der für die Implementierung von Komponenten der erörterten Konfiguration geeignet ist.
  • Gleiche Bezugszeichen in den verschiedenen Zeichnungen zeigen gleiche Elemente an.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Ausführungsformen beziehen sich auf in-line-eingefügte Scriptabhängigkeiten. Ausführungsformen können Testressourcen und ihre Abhängigkeiten innerhalb von HTML einschließen oder beinhalten, wodurch eine Testseite definiert wird. Da Testressourcen (beispielsweise Scripts) und ihre Abhängigkeiten (beispielsweise externe Dateien) vor der Prüfung der Testseite aufgerufen werden und direkt innerhalb HTML welches die Testseite definiert, eingebunden werden, müssen die Ausführungsformen keine Server- und Browser-Ressourcen aufwenden, um Testressourcen und deren Abhängigkeiten für eine Testlaufzeit in den Speicher zu laden. Auf diese Weise verringern Ausführungsformen die Ressourcenbelastung und Ausführungszeit einer Scriptprüfung.
  • Ausführungsformen extrahieren Testressourcen adressiert in einer Sprache, welche eine Testseite definiert, und platzieren Markierungen zur Identifizierung der Position jeder einzelnen extrahierten Testressource innerhalb von HTML, welches die Testseite definiert. Die Markierungen ermöglichen es den Ausführungsformen, die Positionen der extrahierten Textressourcen nach zu verfolgen, während Abhängigkeiten, die mit den Testressourcen assoziiert sind, abgerufen werden. Darüber hinaus ermöglichen die Markierungen es den Ausführungsformen ebenfalls, eine korrekte Rangfolge der aufgerufenen Vorgänger- und Nachfolge-Abhängigkeiten beizubehalten, sodass die aufgerufenen Vorgänger- und Nachfolge-Abhängigkeiten in der richtigen Rangfolge innerhalb des HTML, welches die Testseite definiert, ordnungsgemäß enthalten sind.
  • Ausführungsformen laden externe Ressourcen, die mit einem Pfad zu jeder einzelnen Testressource assoziiert sind, und analysieren jede einzelne Testressource, um dynamisch eingefügte Abhängigkeiten zu identifizieren, und dabei jede einzelne Markierung durch externe Ressourcen und Abhängigkeiten zu ersetzen, die ihre entsprechende Markierung referenzieren, um aktualisierte Sprache zu erstellen, welche eine aktualisierte (oder eingefügte) Testseite definiert Danach kann eine Skriptprüfung unter Nutzung der eingefügten Testseite ausgeführt werden.
  • Ausführungsformen beinhalten darüber hinaus das Hinzufügen jeder einzelnen identifizierten Abhängigkeit hinter oder vor einer Top-Level Vorgängerressource und das Durchführen der Analyse jeder Testressource und das Hinzufügen, bis keine neuen Abhängigkeiten mehr identifiziert werden. Die Ausführungsformen versehen jede einzelne neue Abhängigkeit mit einer Referenz zu einer Vorgängermarkierung, die mit der Top-Level Vorgängerressource, assoziiert ist.
  • Wenngleich das Folgende mit Verweis auf die illustrativen Ausführungsformen für bestimmte Anwendungen erörtert wird, so ist zu berücksichtigen, dass die Ausführungsformen nicht hierauf beschränkt sind. Fachleute mit Zugang zu den hier dargebotenen Erläuterungen werden zusätzliche Modifikationen und Anwendungen im Rahmen dieser Offenlegung und in weiteren Bereichen erkennen, in denen die Ausführungsformen von beträchtlichem nutzen sein würden.
  • System
  • Dieser Abschnitt beschreibt ein System für die in-line Einfügung von Skriptabhängigkeiten gemäß einer Ausführungsform dargestellt in 1. 1 ist ein Diagramm eines Systems 100 für in-line Einführungen von Scriptabhängigkeiten. Wenngleich die folgende Beschreibung sich auf Java Skript und HTML bezieht, so sind die Ausführungsformen nicht auf Java Skript und HTML beschränkt, sondern können auch auf beliebige andere Formen ausführbaren Inhalts, Code, oder Inhalt definierende (oder kennzeichnende) Sprache angewandt werden. Diese Ausführungsformen sind für jedes System anwendbar, das im Allgemeinen über die Struktur von 1 verfügt, oder das von der Operation, den Verfahren und Funktionen, wie hier beschrieben, Nutzen ziehen würde.
  • 1 ist ein Strukturdiagramm der Prüfmaschine 110, gemäß einer Ausführungsform. Wie in 1 gezeigt, Prüfmaschine 110 beinhaltet den Testressourcenextraktor 120, Ressourcenlader und Analysator 130, Markierungsmodul 140 und in-lining Einfügemodul 150. 1 stellt ebenfalls Testseite 160 und in-line-eingefügte Testseite 162 dar. In einer Ausführungsform ist der Testressourcenextraktor 120 ausgelegt, auf die Extrahiehrung von Testressourcen 122 adressiert in Sprache (zum Beispiel, HTML), welches die Testseite 160 definiert. Markierungsmodul 140 ist ausgelegt auf die Platzierung von Markierungen 142 zur Identifizierung der Position jeder einzelnen Testressource 122 innerhalb der Sprache, welche die Testseite 160 definiert. Ressourcenlader und Analysator 130 ist ausgelegt auf das iterative Laden der externen Ressourcen 132 assoziiert mit dem Pfad jeder einzelnen Testressource 122 in den Speicher, um dynamisch hinzugefügte Abhängigkeiten 152 zu identifizieren. In einer Ausführungsform kann eine in-lining Einfügungsfunktion den Austausch einer Funktionsaufruf-Seite zusammen mit dem Körper (oder Code) der aufgerufenen Funktion beinhalten. Das in-lining Einfügemodul 150 ersetzt jede einzelne Markierung 142 durch Ressourcen 132 und Abhängigkeiten 152, die auf ihre respektive Markierung 142 referenzieren, um eine aktualisierte Sprache zu generieren, welche die eingefügte Testseite 162 definiert. In einer Ausführungsform führt danach die Prüfmaschine 110 eine Scriptprüfung durch, wofür es die eingefügte Testseite 162 verwendet. Da Testressourcen 122 (beispielsweise Scripts) und ihre Abhängigkeiten 152 (beispielsweise externe Dateien) vor der Prüfung der Testseite 160 aufgerufen werden und direkt innerhalb des HTML, welches die eingefügte Testseite 162 definiert, eingebunden werden, müssen die Ausfürhrungsformen keine Server- und Browser-Ressourcen aufwenden, um Testressourcen und deren Abhängigkeiten 152 für eine Testlaufzeit in den Speicher zu laden. Auf diese Weise können die Ausführungsformen die Last und Ausführungszeit einer Scriptprüfung verringern. Auf diese Weise verringern Ausführungsformen die Ressourcenbelastung und Ausführungszeit einer Scriptprüfung.
  • Der Funktionsablauf des Testtressourcenextraktors 120, Ressourcenlader und Anslysators 130, Markierungsmodul 140 und in-lining Einfügemodul 150 werden weiter unten dargelegt.
  • Prüfmaschine 110 kann eine beliebige prozessorgesteuerte (oder computergesteuerte) Vorrichtung sein, die sich aus einem oder mehreren Prozessoren zusammensetzt. Beispielsweise kann Prüfmaschine 110 eine Arbeitsstation, ein Mobilgerät, ein Computer, ein Computercluster, eine Set-Top-Box oder andere Vorrichtung mit mindestens einem Prozessor sein. Eine solche Vorrichtung kann beinhalten, ist jedoch nicht darauf beschränkt, ein Gerät mit einem Prozessor und Speicher für das Ausführen und Speichern von Anweisungen. Ein solches Gerät kann Software, Firmware und Hardware beinhalten. Die Software kann eine oder mehrere Anwendungen und ein Betriebssystem beinhalten. Die Hardware kann beinhalten, ist jedoch nicht darauf beschränkt, einen Prozessor, Speicher und Benutzerschnittstellenanzeige beinhalten. Optionale Eingabegeräte, wie beispielsweise eine Maus, Sensorbildschirm oder sonstige zukünftig entwickelte interaktive Verfahren, können benutzt werden.
  • Prüfmaschine 110 kann auch in einem Browser implementiert werden. Ein solcher Browser kann auf einer beliebigen prozessorgesteuerten (oder computergesteuerten) Vorrichtung implementiert werden, die sich aus einem oder mehreren Prozessoren zusammensetzt. In einer Ausführungsform kann die Prüfmaschine 110 auch als ein Java ”servlet” implementiert werden, das auf einem Server (nicht dargestellt) realisiert wird, und das über ein Netzwerk mit der Prüfmaschine 110 kommuniziert. Prüfmaschine 110 kann auch als eine Stand-Alone Anwendung oder Modul implementiert werden.
  • In einer Ausführungsform, ist die Prüfmaschine 110 ausgelegt für das Lesen der Testseite 160 und die Generierung der eingefügten Testseite 162, auf der Script-Abhängigkeiten 152 von Prüfmaschine 110 eingefügt worden sind. In einer Ausführungsform kann die Testseite 160 eine HTML Datei oder andere Datei sein. In einer Ausführungsform beinhaltet die Testseite 160 eine oder mehrere Testressourcen 122. Testressourcen 122 können Testfunktionen sein, welche Scriptcode beinhalten (zum Beispiel, JavaScript), der ausgeführt werden kann, wenn die Testseite 160 von Prüfmaschine 110 gelesen wird. In einer Ausführungsform können die Testressourcen 122 auf Testseite 160 von der Prüfmaschine 110 durch die Verwendung von Tags (oder Identifikatoren) identifiziert werden, die neben den Testressourcen 122 angeordnet (oder von diesen eingekapselt) sind. In einem Beispiel, in dem die Testressourcen 122 Java Script sind, können solche Tags Skripttags 124 (zum Beispiel, ”<script>”) sein. Wie Fachleuten bekannt ist, wird ein Scripttag für die Definition und Identifikation eines clientseitigen Scripts, wie beispielsweise Java Script, verwendet. Dass Scripttag kann Scipterlärungen enthalten oder es kann auf eine externe Skript Datei mittels einem ”src” Attribut verweisen. Es ist zu beachten, dass die Ausführungsformen nicht auf Scripttags und Java Skript beschränkt sind, sondern dass sie mit anderen Formen von Testressourcenidentifikation oder Skripten verwendet werden können, die gegenwärtig bekannt sind oder zukünftig entwickelt werden.
  • In einer Ausführungsform ist der Testressourcenextraktor 120 ausgelegt auf die Extrahierung von Testressourcen 122, die in Sprache (zum Beispiel, HTML), welche die Testseite 160 definiert, beeinhaltet oder adressiert sind. Testressourcen 122 können Testfunktionen sein, welches Scriptcode beinhalten (zum Beispiel, JavaScript), der ausgeführt werden kann, wenn die Testseite 160 von Prüfmaschine 110 für eine Prüfung gelesen wird. In einer Ausführungsform können die Testressourcen 122 auf Testseite 160 durch die Verwendung von Tags (oder Identifikatoren) identifiziert werden, die neben den Testressourcen 122 angeordnet (oder von diesen eingekapselt) sind. Wie oben angemerkt, können solche Skripttags in HTML eingebettet sein, das die Testseite 160 definiert. In einer Ausführungsform zergliedert der Testressourcenextraktor 120 die Testseite 160, um Scripttags und dazufgehörige Scripts zu identifizieren und zu extrahieren
  • in einer Ausführungsform ist das Markierungsmodul 140 darauf ausgelegt, Markierungen 142 zu platzieren, welche die Stelle jeder einzelnen extrahierten Testressource 122 innerhalb HTML identifiziert, welches die Testseite 160 definiert Eine Markierung 142 kann eine beliebige Form der Identifikation oder Datenstruktur sein, welche von Markierungsmodul 140 verwendet wird, um die Stelle jeder einzelnen extrahierten Testressourcen 132 zu identifizieren undaufrechtzuerhalten.
  • In einer Ausführungsform ist ein Ressourcenlader und Analysator 130 ist ausgelegt auf das Laden von externen Ressourcen 132 (beispielsweise Dateien, Bilder, Scripts, usw.), assoziiert mit dem Pfad jeder einzelnen Testressource 122, adressiert auf Testseite 160, in den Speicher. In einer Ausführungsform kann ein Ressourcenlader und Analysator 130 über den Pfad jeder einzelnen Testressource 122 iterieren, um externe Abhängigkeiten 152, zu laden, die durch den Pfad der Testressource 122 referenziert sein können. In einem Beispielszenario erfordert eine Testressource 122 möglicherweise externe Ressourcen 132 (beispielsweise Dateien, Bilder, Scripts, usw.) damit die Testressource 122 ordnungsgemäß ausgeführt werden kann. Solche externe Ressourcen 132 können sich auf einem Server befinden, der unabhängig von Prüfmaschine 110 ist, oder können sich sogar auf einer Recheneiheit befinden, auf der die Prüfmaschine 110 betrieben wird. Durch iteratives Laden externer Ressourcen 132 (oder anderer Abhängigkeiten 152), welche von einer Testressource 122 benötigt werden, in den Speicher im Voraus, wird weniger Zeit benötigt um eine Prüfung auszuführen, weil ein solches Laden der externen Ressourcen 132 nicht in Echtzeit erfolgen muss, wenn die Prüfung durchgeführt wird.
  • Wenn in einer Ausführungsform der Ressourcenlader und Analysator 130 feststellt, dass ein Testressourcenpfad nicht auflösbar (oder zugängig) ist, behalten der Ressourcenlader und Analysator 130 und das Markierungsmodul 140 die Platzierung der Testressource 122 zusammen mit dem unauflösbaren Pfad bei, um die Prüfmaschine 110 die Lage zu versetzen, die Ressourcen, die mit dem Test Ressourcenpfad assoziiert sind, zusammen mit dem assoziierten Testressourcenpfad während der Laufzeit zu laden.
  • In einer Ausführungsform analysiert Ressourcenlader und Analysator 130 jede einzelne geladene Testressource 122, um dynamisch hinzugefügte Abhängigkeiten 152 zu identifizieren. Dynamisch hinzugefügte Abhängigkeiten 152 können Scripts oder sonstige Dateien sein, die von einer Test Ressource 122 Während der Laufzeit benötigt werden. In einer Ausführungsform kann der Ressourcenlader und Analysator 130 dynamisch hinzugefügte Abhängigkeiten 152 identifizieren, indem er Scripts bewertet, wofür eine Skriptlaufzeitmaschine (zum Beispiel Java Skriptlaufzeitmaschine) verwendet wird, und die Testressourcen 122 zergliedert werden, um Hinweise auf Abhängigkeiten zu identifizieren. Solche Hinweise auf Abhängigkeiten können beispielsweise Ressourcenanforderungen sein.
  • In einer Ausführungsform, fügt der Ressourcenlader und Analysator 130 jede neu identifizierte Abhängigkeit 152 entweder nach der Top-Level Vorgängerressource 122 (d. h., Vortäuschung eines Browser Runtime HTML Ladebefehls), oder vor der Top-Level Vorgängerressource 122 (d. h., Vortäuschung des dynamischen Resolution-Ladebefehls) ein. Das Markierungsmodul 140 versieht auch jede einzelne neue Abhängigkeit 152 mit einer Referenz zu einer Vorgängermarkierung 142, die mit der Top-Level Vorgängerressource 122 assoziiert ist.
  • In einer Ausführungsform führt Ressourcenlader und Analysator 130 so lange fort, jede neue Abhängigkeit 152 zu identifizieren und zu einer Top-Level Vorgängerresource hinzuzufügen, bis keine neuen Ressourcen 122 mehr identifiziert werden. Auf diese Weise wird durch iteratives Laden externer Ressourcen 132 (oder anderer Abhängigkeiten), welche von einer Testressource 122 benötigt werden, vor dem Prüfen, wird weniger Zeit benötigt um eine Prüfung auszuführen, weil ein solches Laden der externen Ressourcen 132 nicht in Echtzeit erfolgen muss, wenn die Prüfung ausgeführt wird.
  • Wie oben bereits erwähnt, ist das Markierungsmodul 140 darauf ausgelegt, Markierungen 142 zu platzieren, welche die Stelle jeder einzelnen extrahierten Testressource 132 innerhalb HTML identifiziert, welches die Testseite 160 definiert. Eine Markierung 142 kann eine beliebige Form der Identifikation oder Datenstruktur sein, welche von Markierungsmodul 140 verwendet wird, um die Stelle jeder einzelnen extrahierten Testressourcen 122 zu identifizieren und aufrechtzuerhalten. In einer Ausführungsform ersetzt das in-lining Modul 150 jede einzelne Markierung 142 durch extrahierte Ressourcen 132 und Abhängigkeiten 152, die auf ihre respektive Markierung 142 referenzieren, um eine eingefügte Testseite 162 zu generieren.
  • In einer Ausführungsform, werden ungelöste Markierungen 142 (oder Markierungen, die mit ungelösten Pfaden assoziiert sind) unverändert gelassen, sodass Prüfmaschine 110 Ressourcen 122 zugehörig zu solchen ungelösten Pfaden während der Laufzeit laden kann. Danach führt die Prüfmaschine 110 eine Scriptprüfung durch, wofür es die eingefügte Testseite 162 verwendet. Da Testressourcen 122 (beispielsweise Scripts) und ihre Abhängigkeiten 152 (beispielsweise externe Dateien) vor der Prüfung der Testseite 160 aufgerufen und direkt innerhalb des HTML, welches die Testseite 162 definiert, eingebunden werden, müssen Ausführungsformen keine Server- und Browser-Ressourcen aufwenden, um Testressourcen 122 und deren Abhängigkeiten 152 für eine Testlaufzeit in den Speicher zu laden. Auf diese Weise verringern Ausführungsformen die Ressourcenbelastung und Ausführungszeit einer Scriptprüfung.
  • 2A ist ein Flussdiagramm zur Erläuterung des Verfahrens 200. Verfahren 200 ist eine Gesamtoperation der Prüfmaschine 110, gemäß einer Ausführungsform.
  • Verfahren 200 beginnt damit, dass Prüfmaschine 110 die Testseite 160 liest (Schritt 202). Beispielsweise kann eine solche Testseite 160 eine HTML Datei oder andere Datei sein. In einer Ausführungsform beinhaltet die Testseite 160 eine oder mehrere Testressourcen 122. Testressource 122 kann Scriptcode enthalten (zum Beispiel., JavaScript).
  • Testressourcenextractor 120 extrahiert Scripttags 124 assoziiert mit Testressourcen 122 auf der Testseite 160 (Schritt 204). Wie oben angemerkt, können solche Skripttags 124 in HTML eingebettet sein, das die Testseite 160 definiert. In einer Ausführungsform zergliedert der Testressourcenextraktor 120 die Testseite 160, um Scripttags 124 und dazugehörige Scripts 126 zu identifizieren und zu extrahieren.
  • Ressourcenlader und Analysator 130 lädt externe Ressourcen 132 verknüpft mit einem Pfad jeder Testressourcen 122 (Schritt 206). In einem Beispielszenario erfordert eine Testressource 122 möglicherweise externe Ressourcen 132 (beispielsweise Dateien), damit die Test Ressource 122 ordnungsgemäß durchgeführt werden kann Solche externe Ressourcen 132 können sich auf einem Server befinden, der unabhängig von Prüfmaschine 110 ist, oder können sich sogar auf einer Recheneiheit befinden, auf der die Prüfmaschine 110 betrieben wird. Solche externen Ressourcen 132 können iterativ vom Ressourcenlader und Analysator 130 geladen werden.
  • der Ressourcenlader und Analysator 130 überprüft ebenfalls, ob externe Testressourcenpfade vorliegen, die nicht aufgelöst werden können (Schritt 208). Wenn der Ressourcenlader und Analysator 130 feststellt, dass ein Testressourcenpfad nicht auflösbar ist (Schritt 208), behalten Ressourcenlader und Analysator 130 und Markierungsmodul 140 die Platzierung der Testressource 122 zusammen mit dem unauflösbaren Pfad bei (Schritt 210), und Verfahren 200 geht über zum Schritt 212.
  • Zurückkommend auf Schritt 208, wenn der Ressourcenlader und Analysator 130 feststellt, dass alle externen Testressourcepfade aufgelöst worden sind (Schritt 208), analysiert der Ressourcenlader und Analysator 130 jede einzelne geladene Testressource 122, um dynamisch hinzugefügte Abhängigkeiten 152 zu identifizieren (Schritt 212). Dynamisch hinzugefügte Abhängigkeiten 152 können Scripts 126 oder sonstige Dateien sein, die von einer Testressource 122 bei Laufzeit benötigt werden.
  • Ressourcenlader und Analysator 130 überprüft, ob neue Abhängigkeiten 152 in Schritt 212 identifiziert worden sind (Schritt 214). Wenn Ressourcenlader und Analysator 130 neue Abhängigkeiten 152 identifiziert (Schritt 214), geht das Verfahren 200 zu Schritt 206 über, in dem Ressourcenlader und Analysator 130 externe Ressourcen 132 assoziiert mit einem Pfad für jede Testressource 122 lädt. Wenn der Ressourcenlader und Analysator 130 keine neuen Abhängigkeiten identifiziert (Schritt 214), ersetzt in-lining Modul 150 jede einzelne Markierung 142 durch Ressourcen 122 und Abhängigkeiten 152, die auf ihre respektive Markierung 142 referenzieren, um eine eingefügte Testseite 162 zu generieren (Schritt 216).
  • 2B ist ein Flussdiagramm zur Erläuterung von Schritt 214 des Verfahrens 200 in größerem Detail gemäß einer Ausführungsform. In einer Ausführungsform kann der Ressourcenlader und Analysator 130 dynamisch hinzugefügte Abhängigkeiten 152 identifizieren, indem er Scripts 126 bewertet, wofür eine Skriptlaufzeitmaschine 134 (zum Beispiel Java Skriptlaufzeitmaschine) verwendet wird, und wobei die Testressourcen 122 zergliedert werden, um Hinweise auf Abhängigkeiten zu identifizieren (Schritt 220). Solche Hinweise können beispielsweise Ressourcenanforderungen beinhalten.
  • Der Ressourcenlader und Analysator 130 fügt jede neu identifizierte Abhängigkeit 152 entweder hinter der Top-Level Vorgängerressource 122 (d. h. Vortäuschung eines Browser HTML Laufzeitladebefehls) oder vor der Top-Level Vorgängerressource 122 (d. h. Vortäuschung des dynamischen Auflösungsladebefehls (Schritt 222) ein. Das Markierungsmodul 140 versieht auch jede einzelne neue Abhängigkeit 152 mit einer Referenz zu einer Vorgängermarkierung 142, die mit der Top-Level Vorgängerressource 122 assoziiert ist (Schritt 224).
  • Auf diese Weise wird durch iteratives Laden externer Ressourcen 132 (oder anderer Abhängigkeiten), welche von einer Testressource 122 benötigt werden, vor der Prüfung der Testseite 160, weniger Zeit benötigt, um die Prüfung auszuführen, weil ein solches Laden der externen Ressourcen 132 nicht in Echtzeit erfolgen muss, wenn die Prüfung erfolgt.
  • Beispielhafte Computer-Ausführungsform
  • In einer Ausführungsform, werden das System und die Komponenten der hierin beschriebenen Ausführungsformen durch die Verwendung von einem oder mehreren Computern umgesetzt, wie beispielsweise Computer 302, dargestellt in 3. Beispielsweise kann Prüfmaschine 110 durch Verwendung Computer(n) 302 umgesetzt werden.
  • Computer 302 kann ein beliebiger im Handel erhältlicher Computer sein, der in der Lage ist, die hierin beschriebenen Funktionen durchzuführen.
  • Der Computer 302 beinhaltet eine oder mehrere Prozessoren (auch „central processing Units”, oder CPUs genannt), wie Prozessor 306. Prozessor 306 ist mit einer Kommunikationsinfrastruktur 304 verbunden
  • Computer 302 beinhaltet ebenfalls einen Haupt- oder Primärspeicher 308, wie beispielsweise einen Radom Access Memory (RAM-Speicher). Im Primärspeicher 308 ist die Steuerlogik 368A (Computer Software) mit zugehörigen Daten gespeichert.
  • Der Computer 302 beinhaltet ebenfalls ein oder mehrere Sekundärspeichergeräte 310. Sekundäre Speichergeräte 310 beinhalten beispielsweise ein Festplattenlaufwerk 312 und/oder ein Wechselspeichergerät oder Wechselspeicherlaufwerk 314, sowie andere Arten von Speichervorrichtungen, wie Speicherkarten und Memorysticks Ein Wechselspeicherlaufwerk 314 stellt ein Diskettenlaufwerk, ein Magnetbandlaufwerk, ein Kompaktplattenlaufwerk, eine optisches Speichervorrichtung, ein Sicherungsband, usw. dar.
  • Das Wechselspeicherlaufwerk 314 interagiert mit einem Wechselspeichereinheit 316. Eine Wechselspeichereinheit 316 beinhaltet ein für einen Computer benutzbares oder lesbares Speichermedium 364A, auf dem Computer Software 368B (Control Logik) und/oder Daten gespeichert sind. Das Wechselspeicherlaufwerk 316 beinhaltet eine Diskette (Floppy), Magnetband, eine Kompaktdiskette, DVD, optische Speicherdiskette, oder ein sonstiges Computerdatenspeichergerät. Das Wechselspeicherlaufwerk 314 liest von und/oder schreibt auf wohl bekannte Art und Weise auf Wechselspeichereinheit 316.
  • Der Computer 302 beinhaltet ebenfalls Eingabe/Ausgabe/Anzeigegeräte 366, wie Bildschirme, Tastaturen, Zeigegeräte, Bluetooth-Geräte usw.
  • Der Computer 302 beinhaltet darüber hinaus eine Kommunikations- oder Netzwerkschnittstelle 318. Die Netzwerkschnittstelle 318 ermöglicht es dem Computer 302 mit ferngesteuerten Geräten in Verbindung zu treten. Beispielsweise ermöglicht die Netzwerkschnittstelle 318 dem Computer 302, über Kommunikationsnetzwerke oder Kommunikationsmediem 364B (repräsentierend eine Form von Computer nutzbarem und lesbarem Medium), wie LANs, WANs, das Internet usw., zu kommunizieren. Netzwerkinterface 318 kann mit entfernten Standorten oder Netzwerken über Leitungsverbindungen oder drahtlose Verbindungen kommunizieren.
  • Die Steuerlogik 368C kann über das Kommunikationsmedium 364B zu und von Computer 302 übertragen werden.
  • Jede beliebige konkrete Vorrichtung oder hergestellter Gegenstand, der einen Computernutzbares oder -lesbares Medium beinhaltet, mit darauf gespeicherter Steuerlogik (Software), wird hierin als ein Computerprogrammprodukt oder Programmspeichergerät bezeichnet. Diese beinhaltet, aber nicht ausschließlich, Computer 302, Hauptspeicher 308, Sekundärspeichereinheiten 310 und Wechselspeichereinheit 316. Solche Computerprogrammprodukte mit darin gespeicherter Steuerlogik, die wenn sie von einer oder mehreren Datenverarbeitungsgeräten ausgeführt wird, veranlassen solche Datenbearbeitungsgeräte, so zu funktionieren, wie in den hier beschrieben Ausführungsformen dargestellt.
  • Ausführungsformen können mit Software, Hardware, und/oder anderen als den hier beschriebenen Betriebssystem-Implementierungen betrieben werden. Jede beliebige Software, Hardware und Betriebssystem-Implementation, die für die Durchführung der hier beschriebenen Funktionen geeignet sind, können verwendet werden. Ausführungsformen sind anwendbar sowohl für einen Klienten als auch für einen Server oder für eine Kombination von beiden.
  • Die Abschnitte der Zusammenfassung und der Übersicht können eine oder mehrere aber nicht alle beispielhaften Ausführungsformen, wie durch den (die) Erfinder vorgesehen, darlegen und sind daher nicht geeignet, um die vorliegende Erfindung und die beigefügten Ansprüche in irgendeiner Weise zu begrenzen.
  • Die vorliegenden Ausführungsformen wurden oben beschrieben unter Zuhilfenahme von funktionalen Bausteinen, welche die Implementierung der spezifizierten Funktionen und Verhältnisse zueinander veranschaulichen. Grenzen dieser funktionalen Bausteine wurden zum besseren Verständnis der Beschreibung hierin willkürlich definiert. Alternative Grenzen können definiert werden, solange deren spezifizierte Funktionen und Beziehungen angemessen durchgeführt werden.
  • Die vorstehende Beschreibung der spezifischen Ausführungsformen wird so in vollem Umfang ihre generelle Natur offenbaren, sodass wiederum andere durch Anwendung des Fachwissens und Fertigkeiten in ihrem Fachbereich auf einfache Weise spezifische Ausführungsformen für vielfältige Anwendungen modifizieren und/oder anpassen können ohne unnötiges Experimentieren, ohne vom allgemeinen Konzept abzuweichen. Daher sind solche Anpassungen und Modifikationen auf Basis der hierin präsentierten Lehre und Anleitung als innerhalb der Bedeutungen des Bereichs der Äquivalente der offenbarten Ausführungsformen zu betrachten. Es versteht sich dass die hierin verwendete Phraseologie oder Terminologie der Beschreibung dient und nicht der Einschränkung, sodass die Terminologie oder Phraseologie der vorliegenden Spezifikation vom Fachmann unter der Sichtweise von Lehre und Führung zu interpretieren ist.
  • Die Tiefe und der Wirkungsbereich der Ausführungsformen sollte nicht durch eine der obig beschriebenen beispielhaften Ausführungsformen eingeengt werden, sondern sollten nur in Übereinstimmung mit den folgenden Ansprüchen und ihren äquivalenten interpretiert werden.

Claims (8)

  1. Computergestütztes System für die in-line-Einfügung von Scriptabhängigkeiten, umfassend: einem oder mehreren Prozessoren (306); einen Testressourcenextraktor (120), ausgelegt zur Extrahierung von Testressourcen (122) adressiert in Sprache, welche eine Testwebseite (160) definiert; ein Markierungsmodul (140), ausgelegt zur Aufrechterhaltung von Markierungen (142) zur Identifizierung einer Position jeder einzelnen Testressource (122) innerhalb der Sprache, welche die Testseite (160) definiert. ein Ressourcenlader und Analysator (130), ausgelegt zum iterativen Laden externer Ressourcen (132) assoziiert mit einem Pfad jeder einzelnen Testressource (122), und ausgelegt, zum Analysieren jeder einzelnen Testressource (122), um ein oder mehrere dynamisch hinzugefügte Abhängigkeiten (152) zu identifizieren; und ein in-lining Einfügemodul (150), ausgelegt zum Ersetzen jeder einzelnen Markierung (142) durch externe Ressourcen (132) und Abhängigkeiten (152), die auf ihre respektive Markierung (142) referenzieren, um eine aktualisierte Sprache zu generieren, welche eine aktualisierte Testseite (160, 162) definiert, wobei der Testressourcenextraktor (120), das Markierungsmodul (140), der Ressourcenlader und Analysator (130) und das in-lining-Modul (150) auf einem oder mehreren Prozessoren (306) implementiert sind.
  2. System nach Anspruch 1, wobei der Ressourcenlader und Analysator (130) ausgelegt ist zum: Einfügen jeder einzelnen identifizierten Abhängigkeit (152) hinter oder vor einer Top-Level Vorgängerressource (122); und Versehen jeder einzelnen neuen Abhängigkeit (152) mit einer Referenz zu einer Vorgängermarkierung (142), die mit der Top-Level Vorgängerressource (122) assoziiert ist.
  3. System nach Anspruch 1 oder 2, wobei das Markierungsmodul (140) darüber hinaus darauf ausgelegt ist, die Platzierung jeder einzelnen Testressource (122) und ihres Pfads beizubehalten, wenn der Pfad nicht aufgelöst werden kann, um externe Ressourcen zu laden.
  4. System nach Anspruch 1–3, wobei der Ressourcenlader und Analysator (130) ausgelegt ist zum: Bewerten eines Scripts (126) unter Nutzung einer Skriptlaufzeitmaschine (134); und Aufgliedern des Scripts (126) zur Identifizierung von Referenzen auf Ressourcenabhängigkeiten (152).
  5. Fertigungsartikel, aufweisend ein von einer Recheneinheit lesbares Speichermedium mit darauf kodierten Anweisungen, die, wenn von einer Recheneinheit (302) ausgeführt, die Recheneinheit (302) zur Ausführung von Operationen veranlasst, die Folgendes umfassen: Extrahieren von Testressourcen (122) adressiert in Sprache, welche eine Testwebseite (160) definiert; Platzierung von Markierungen (142) zur Identifizierung der Position jeder einzelnen Testressource (122) innerhalb der Sprache, welche die Testseite (160) definiert; iteratives Aufrufen von externe Ressourcen (132) assoziiert mit einem Pfad jeder einzelnen Testressource (122); Analysieren jeder einzelnen Testressource (122), um eine oder mehrere dynamisch hinzugefügte Abhängigkeiten (152) zu identifizieren; und Ersetzen jeder einzelnen Markierung (142) mit externen Ressourcen (132) und Abhängigkeiten (152), die ihre entsprechende Markierung (142) referenzieren, um aktualisierte Sprache zu erstellen, welche eine aktualisierte Testseite (160, 162) definiert.
  6. Fertigungsartikel nach Anspruch 5, weiterhin umfassend Anweisungen, die den Rechner veranlassen, Operationen durchzuführen, welche umfassen: Einfügen jeder einzelnen identifizierten Abhängigkeit (152) hinter oder vor einer Top-Level Vorgängerressource (122); Durchführung der Analyse und des Einfügens, bis keine neue Abhängigkeiten (152) mehr identifiziert werden; und Versehen jeder einzelnen neuen Abhängigkeit (152) mit einer Referenz zu einer Vorgängermarkierung (142), die mit der Top-Level Vorgängerressource (122) assoziiert ist.
  7. Fertigungsartikel nach Anspruch 5 oder 6, wobei das iterative Laden weiterhin Anweisungen beinhaltet, welche den Rechner dazu bringen, die Platzierung jeder einzelnen Testressource (122) und ihres Pfads beizubehalten, wenn der Pfad nicht aufgelöst werden kann, um externe Ressourcen (132) zu laden.
  8. Fertigungsartikel nach einem der Ansprüche 5–7, wobei die Analyse darüber hinaus beinhaltet: Instruktionen, die den Rechner dazu bringen Funktionen durchzuführen, die beinhalten: Bewertung eines Scripts (126) unter Verwendung eines Script-Laufzeitmaschine (134), und Aufgliedern des Scripts (126) zur Identifizierung von Referenzen auf Ressourcenabhängigkeiten (152).
DE202012013449.3U 2011-06-14 2012-06-13 System für In-Line-Einfügung von Scriptabhängigkeiten Expired - Lifetime DE202012013449U1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/160,021 US8943476B2 (en) 2011-06-14 2011-06-14 System and method to in-line script dependencies
US13/160,021 2011-06-14

Publications (1)

Publication Number Publication Date
DE202012013449U1 true DE202012013449U1 (de) 2017-01-20

Family

ID=46321501

Family Applications (1)

Application Number Title Priority Date Filing Date
DE202012013449.3U Expired - Lifetime DE202012013449U1 (de) 2011-06-14 2012-06-13 System für In-Line-Einfügung von Scriptabhängigkeiten

Country Status (5)

Country Link
US (1) US8943476B2 (de)
EP (1) EP2721494B1 (de)
JP (1) JP5815856B2 (de)
DE (1) DE202012013449U1 (de)
WO (1) WO2012174033A1 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8819631B2 (en) * 2011-01-13 2014-08-26 Hewlett-Packard Development Company, L.P. System and method for self dependent web automation
US8918763B2 (en) * 2013-01-30 2014-12-23 Hewlett-Packard Development Company, L.P. Marked test script creation
GB2539262A (en) * 2015-06-12 2016-12-14 Micro Focus Ip Dev Ltd Testing interactive network systems

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7444397B2 (en) * 2004-12-21 2008-10-28 International Business Machines Corporation Method of executing test scripts against multiple systems
US20060282428A1 (en) * 2005-06-10 2006-12-14 Microsoft Corporation Method and system for assignment of membership through script
US20070174824A1 (en) * 2006-01-23 2007-07-26 Microsoft Corporation Techniques for generating and executing browser-hosted applications
US7827523B2 (en) * 2006-02-22 2010-11-02 Yahoo! Inc. Query serving infrastructure providing flexible and expandable support and compiling instructions
US20080083012A1 (en) * 2006-06-26 2008-04-03 Dachuan Yu Program instrumentation method and apparatus for constraining the behavior of embedded script in documents
US8392890B2 (en) * 2007-10-15 2013-03-05 Software Research, Inc. Method and system for testing websites
US9361129B2 (en) * 2007-08-01 2016-06-07 Microsoft Technology Licensing, Llc Instance interfaces and mix-ins for dynamic languages
US8996682B2 (en) * 2007-10-12 2015-03-31 Microsoft Technology Licensing, Llc Automatically instrumenting a set of web documents
EP2327022B1 (de) * 2008-07-22 2015-09-16 Webtrends Verfahren und system zur website-prüfung
US8156420B2 (en) * 2008-11-14 2012-04-10 Microsoft Corporation Form validation with table driven error handling
JP4806060B2 (ja) 2009-09-15 2011-11-02 インターナショナル・ビジネス・マシーンズ・コーポレーション コンパイラ・プログラム、コンパイル方法及びコンピュータ・システム
US9003380B2 (en) * 2010-01-12 2015-04-07 Qualcomm Incorporated Execution of dynamic languages via metadata extraction
US9262138B2 (en) * 2010-05-27 2016-02-16 Salesforce.Com, Inc. Adding directives for JavaScript files directly into source code in a multi-tenant database environment
US8732665B2 (en) * 2011-06-28 2014-05-20 Microsoft Corporation Deploying environments for testing by providing instantaneous availability of prebuilt environments

Also Published As

Publication number Publication date
EP2721494A1 (de) 2014-04-23
JP2014519671A (ja) 2014-08-14
EP2721494B1 (de) 2018-12-19
WO2012174033A1 (en) 2012-12-20
US8943476B2 (en) 2015-01-27
JP5815856B2 (ja) 2015-11-17
US20120324426A1 (en) 2012-12-20

Similar Documents

Publication Publication Date Title
DE102020115253A1 (de) Verfahren und einrichtung zum ausführen eines applets
DE60017457T2 (de) Verfahren zur isolierung eines fehlers in fehlernachrichten
DE202016008042U1 (de) Infrastruktur für Hosting und Publishing von Softwarepaketen
DE102014215621A1 (de) Vorlagensystem zum Generieren von benutzerangepassten Dokumenten
DE102017106023A1 (de) Verfahren und System zum automatisierten Benutzerschnittstellentesten über modellgetriebene Techniken
WO2006013161A1 (de) Verfahren, programm und system zur dynamischen, template basierten generierung von internetseiten
DE112013000485T5 (de) Automatische Synthese von Einheitentests für Sicherheitstests
DE112010004980T5 (de) Verbessern der Leistungsfähigkeit von auf Vorlagen beruhenden Javascript-Fensterobjekten
DE10348591A1 (de) Automatically identifying a program error in a computer program
DE102016007400A1 (de) Techniken zum Evaluieren von Anwendungen durch die Verwendung einer Hilfsanwendung
DE202016008043U1 (de) Vorrichtung zum Erzeugen, Erfassen, Speichern und Laden von Debugging-Informationen für gescheiterte Test-Skripts
DE112018002316T5 (de) Codeabdeckungsverfolgung für ein mikrocontroller-programm
DE202012013449U1 (de) System für In-Line-Einfügung von Scriptabhängigkeiten
DE10333088A1 (de) Verfahren zum Liefern von Zugriff auf die internen Signale eines dynamischen Systemmodells von außerhalb bezüglich der Modellierungsumgebung
DE102021130630A1 (de) Testen von software-anwendungskomponenten
DE102015102034A1 (de) Verfahren zum Analysieren von Ergebnissen in einem Entwurfsautomatisierungsablauf für elektronische Systeme, Computersystem und Computerprogrammprodukt
DE10324594A1 (de) Verfahren zum Bereitstellen einer verbesserten Simulationsfähigkeit eines dynamischen Systems außerhalb der ursprünglichen Modellierungsumgebung
DE102007054648A1 (de) Fehler-Identifikation in einem rechner-basierten Netzwerk
DE112020000434T5 (de) Disaggregierte verteilte messanalyse system unter verwendung von dynamic application builder
DE112015004557B4 (de) Anforderungsüberwachen
DE102012210482A1 (de) Verfahren und System zum Migrieren von Geschäftsprozessinstanzen
DE112018006175T5 (de) Fehlerbehandlung
EP3528473A1 (de) Verfahren, client-computer und computerprogramm zur ausführung von quellcode an einem client-computer
DE102010044039A1 (de) Verfahren und Vorrichtung zur Qualitätsanalyse von Systemmodellen
DE112015004642T5 (de) Erzeugen von Webbrowseransichten für Anwendungen

Legal Events

Date Code Title Description
R207 Utility model specification
R150 Utility model maintained after payment of first maintenance fee after three years
R081 Change of applicant/patentee

Owner name: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUN, US

Free format text: FORMER OWNER: GOOGLE INC., MOUNTAIN VIEW, CALIF., US

R082 Change of representative

Representative=s name: BETTEN & RESCH PATENT- UND RECHTSANWAELTE PART, DE

R081 Change of applicant/patentee

Owner name: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUN, US

Free format text: FORMER OWNER: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUNTAIN VIEW, CALIF., US

R082 Change of representative

Representative=s name: BETTEN & RESCH PATENT- UND RECHTSANWAELTE PART, DE

R151 Utility model maintained after payment of second maintenance fee after six years
R152 Utility model maintained after payment of third maintenance fee after eight years
R071 Expiry of right