Ziel
Erstellen Sie ein multivariate-Test-Experiment (MVT) mit mehreren Sections und Variationen und legen Sie anschließend eine benutzerdefinierte (ungleiche) Traffic-Allokation für diese Variationen fest. Einen Überblick über MVT-Konzepte (Sections, Variationen und Kombinationen) und die Konfiguration der Traffic-Allokation in der Kameleoon-App finden Sie unter Multivariate-Tests einrichten.Voraussetzungen
access token
siteId
siteId direkt in Ihrem Code über die siteCode ab, indem Sie den Endpoint zum Abrufen einer Site anhand des Codes aufrufen, oder finden Sie sie in der App, indem Sie die Schritte unter Ein neues Experiment erstellen befolgen.
Grundlegende Konzepte
Die Referenzvariation
Kameleoon fügt jeder von Ihnen gesendeten Section automatisch eine Referenzvariation hinzu. Diese Referenz erscheint in der Antwort alsvariationId: "0" innerhalb der Allokationseinträge der jeweiligen Section.
Wenn Sie eine eigene Variation mit dem Namen Original senden, erstellt Kameleoon sie als separate, zusätzliche Variation. Sie identifiziert oder ersetzt die generierte Referenz nicht. Senden Sie nur dann eine explizite Original-Variation, wenn Sie zwei unterschiedliche Baseline-Variationen in derselben Section testen möchten.
Vom Client gesendete IDs sind temporär
Die WertesectionId und Variation-id, die Sie in mvtVariations senden, verknüpfen Einträge nur innerhalb dieser einen Anfrage: Sie verbinden jeden Allokationseintrag in mvtAllocationSettings mit der richtigen Section und Variation, bevor Kameleoon permanente IDs generiert. Verwenden Sie beliebige Ganzzahlen, die für Sie praktisch sind.
Kameleoon verwirft die gesendeten Werte und ersetzt sie durch eigene generierte sectionId- und variationId-Werte. Verwenden Sie die generierten Werte (die in der Antwort und durch eine spätere GET-Anfrage zurückgegeben werden) für alle nachfolgenden Anfragen. Die Antwort enthält nicht die von Ihnen gesendeten Variationsnamen, sondern nur die generierten IDs. Wenn Sie bestätigen müssen, welche generierte ID zu welchem gesendeten Namen gehört, prüfen Sie das Experiment in der Kameleoon-App.
Section-IDs versus Kombinations-IDs
Kameleoon generiert zwei unterschiedliche Gruppen von IDs für ein multivariate-Test-Experiment:- Section- und Variation-IDs identifizieren eine Variation innerhalb einer Section. Verwenden Sie diese in
mvtAllocationSettings.sectionsAllocations. - Kombinations-IDs identifizieren eine vollständige Kombination von Variationen, eine pro Section, die exponierten Besuchern angezeigt wird. Kameleoon generiert jede mögliche Kombination als kartesisches Produkt der Variationen aller Sections (einschließlich der Referenz in jeder Section) und gibt die Kombinations-IDs im Array
variationsauf oberster Ebene sowie als Schlüssel in derdeviations-Map zurück. Verwenden Sie diese inmvtAllocationSettings.combinationsAllocations.
sectionsAllocations als auch combinationsAllocations verwenden dieselbe Struktur für Allokationseinträge (allocationPart, checked, locked, sectionId, variationId); wählen Sie daher nur eine Methode:
- Füllen Sie
sectionsAllocations, um den Traffic nach einzelner Variation innerhalb jeder Section zu verteilen. Kameleoon leitet den Anteil jeder Kombination aus den Werten auf Section-Ebene ab. - Füllen Sie
combinationsAllocations, um den Traffic direkt bestimmten Kombinationen zuzuweisen.
combinationsAllocations nicht in der Erstellungsanfrage befüllen. Rufen Sie die generierten Kombinations-IDs mit einer GET-Anfrage ab und legen Sie combinationsAllocations anschließend in einer nachfolgenden PATCH-Anfrage fest, nach demselben Muster, das in diesem Tutorial für sectionsAllocations verwendet wird.
Schritte
1. Das Experiment erstellen
Endpoint:
Beispiel:
sectionId- und variationId-Werte generiert hat (4451, 4452, 1351293-1351296), jeder Section eine Referenzvariation (variationId: "0") hinzugefügt und die gesendete Allokation durch einen gleichmäßigen Anteil von 0.33333334 ersetzt hat, wobei locked auf false zurückgesetzt wurde. exposedPart bleibt wie gesendet erhalten. Fahren Sie mit dem nächsten Schritt fort, um die gewünschte Allokation festzulegen.
2. Die generierten IDs abrufen
Wenn Sie die generierten IDs aus der Erstellungsantwort nicht erfasst haben, rufen Sie sie mit einerGET-Anfrage ab.
Endpoint:
mvtAllocationSettings.sectionsAllocations wie in Schritt 1, mit den generierten sectionId- und variationId-Werten, die Sie für den nächsten Schritt benötigen.
3. Benutzerdefinierte Traffic-Allokation festlegen
Endpoint:mvtAllocationSettings erneut, diesmal mit den generierten sectionId- und variationId-Werten aus Schritt 2.
Beispiel:
locked bleibt true. Eine nachfolgende GET-Anfrage bestätigt dasselbe Ergebnis.
4. Das Experiment überprüfen
Öffnen Sie das Experiments Dashboard in der Kameleoon-App und öffnen Sie das Experiment, um zu bestätigen, dass Sections, Variationen und Traffic-Allokation Ihrer Konfiguration entsprechen.Bekannte Einschränkungen
- Das Löschen großer multivariate-Test-Experimente kann ein Timeout verursachen.
DELETE /experiments/{experimentId}kann einen504 Gateway Timeout-Fehler zurückgeben, wenn das Experiment viele Kombinationen enthält. Ein Timeout bedeutet nicht zwangsläufig, dass das Löschen fehlgeschlagen ist: Senden Sie eineGET-Anfrage für dieselbe Experiment-ID, um zu prüfen, ob sie noch existiert, bevor Sie den Löschvorgang wiederholen.