Covering Arrays sind ein leistungsfähiges Entwurfswerkzeug, mit dem Testfälle entworfen werden können, um deterministische Systeme effizient zu testen. Bei solchen Systemen wird eine bestimmte Eingabe immer die gleiche Ausgabe erzeugen, und daher sind standardmäßige statistische Entwürfe normalerweise ineffizient. Es stellt sich heraus, dass Fehler in diesen Systemen typischerweise durch bestimmte Kombinationen von wenigen Faktoren hervorgerufen werden. Ein abdeckendes Array stellt sicher, dass alle Kombinationen einer bestimmten Anzahl von Faktoren (als Stärke bezeichnet) wurden bedeckt mit möglichst wenigen Testfällen.
In seiner letzten Post Bradley Jones bezeichnete Arrays als das aufregendste neue DAMHIRSCHKUH Feature kommt in der kommenden Version von JMP .
Die neue Covering Array-Plattform ist in JMP Pro 12 , und es enthält diese vier großartigen Funktionen:
1. Das " Optimieren" button: Die Plattform versucht, ein möglichst kleines Design zu erstellen, und in manchen Fällen sind die Designs optimal. Wenn das von der Plattform erstellte Design jedoch nicht optimal ist, aktiviert die Plattform eine Schaltfläche „Optimieren“, mit der die Größe des Designs weiter reduziert werden kann. Sie können die Anzahl der Optimierungsiterationen angeben. Sie können die Optimierung jederzeit abbrechen und der Optimierer gibt das beste gefundene Design zurück.
2 Das " Faktor-Level-Kombinationen einschränken Steuerung: Bei der Definition eines Entwurfs müssen manchmal bestimmte Kombinationen von Faktorstufen (dh nicht zulässige Kombinationen) eingeschränkt werden. Wenn Sie beispielsweise eine browserbasierte Anwendung testen, möchten Sie sicherstellen, dass Ihr Design keine inkompatiblen Browser- / Betriebssystempaare enthält (z. B. IE10, OSX). Das " Faktor-Level-Kombinationen einschränken Die Steuerung bietet zwei Möglichkeiten, um solche Einschränkungen festzulegen. Die Idee ist, ein Steuerelement bereitzustellen, das ausreichend flexibel ist, um sowohl erfahrenen als auch gelegentlichen Benutzern Rechnung zu tragen. Sie können JSL (JMP Scripting Language) verwenden, um Einschränkungen als booleschen Ausdruck zu definieren.

Das korrekte Angeben von Einschränkungen als boolescher Ausdruck kann manchmal eine Herausforderung darstellen. Um dies zu erleichtern, können Sie ein Tool verwenden, das einem Datenfilter ähnelt, um Einschränkungen anzugeben.

Beachten Sie, dass Designs, die Kombinationen von Faktorstufen einschränken, ebenfalls optimiert werden können.
3. Das " Analyse ”Tabellenskript: Wenn Sie eine Konstruktionsdatentabelle erstellen, wird eine Antwortspalte hinzugefügt, und ein Tabellenskript„ Analyse “ist verfügbar. Ein Ergebnis für einen dieser Läufe kann entweder bestanden, nicht bestanden oder nicht vorhanden sein. Wenn mindestens eines der Ergebnisse ein Fehler ist, kann das Analyseskript verwendet werden, um mögliche Faktor / Level-Kombinationen zu identifizieren, die den Fehler hätten auslösen können. Dieses Identifikationsproblem wird oft als das Problem der Fehlerlokalisierung bezeichnet.

4 Das " Design laden ”Menüoption: Mit dieser Option können Sie ein Covering-Array-Design aus einer JMP-Datentabelle laden. Stellen Sie sich vor, Sie haben ein Design und möchten die Abdeckungseigenschaften des Designs beurteilen. Oder Sie möchten vielleicht sehen, ob die Anzahl der Läufe reduziert werden kann, während die Abdeckung erhalten bleibt. Wenn sich Ihr Design in einem Format befindet, das von JMP als Datentabelle geöffnet werden kann, können Sie diese Option verwenden, um es in die Plattform zu laden.

Sie können sogar ein Design mit unzulässigen Kombinationen laden, solange die unzulässigen Kombinationen als boolescher Ausdruck in einer Tabelleigenschaft "Unzulässige Kombinationen" angegeben sind.
Weitere Informationen zum Abdecken von Arrays finden Sie unter Brads Diskussion in seinem Beitrag für diese Serie und den Beitrag von Ryan Lekivetz, der beschreibt, wie er geschickt eingesetzt hat Arrays in einem Heimwerkerprojekt abdecken .
Anmerkung des Herausgebers: Dieser Beitrag ist Teil eines Serie von Vorschauen von JMP 12 geschrieben von den Menschen, die die Software entwickeln.