Die Theorie hinter sich gegenseitig ausschließenden Gruppen, einschließlich des Zeitpunkts, zu dem Kameleoon Besucher einer Gruppe zuweist, und der Kompromisse, die Sie vorher abwägen sollten, finden Sie unter Sich gegenseitig ausschließende Gruppen.
Das Szenario
Angenommen, Sie möchten drei sich gegenseitig ausschließende Experimente durchführen:- Zwei Experimente laufen client-side über Kameleoon Web Experimentation (JavaScript-basiert).
- Ein Experiment läuft server-side über Kameleoon Feature Experimentation (zum Beispiel über ein Backend-SDK).
Gegenseitige Ausschließlichkeit über beide Technologien hinweg einrichten
1. Beginnen Sie mit dem Feature-Experiment
Das Feature-Experiment läuft server-side und erfordert frühes Targeting, noch vor dem Laden der Seite. Weisen Sie ihm deshalb zuerst Traffic zu.- Erstellen Sie Ihr Feature-Experiment.
- Weisen Sie diesem Experiment 33 % des Gesamt-Traffics zu, oder einen anderen Prozentsatz, der zu Ihrem Testplan passt.
2. Erstellen Sie eine sich gegenseitig ausschließende Gruppe für die Web-Experimente
Erstellen Sie eine sich gegenseitig ausschließende Gruppe für die beiden Web-Experimente, indem Sie die Anleitung unter Eine sich gegenseitig ausschließende Gruppe für Web-Experimente erstellen befolgen. Dadurch sehen Besucher nur eines der beiden Web-Experimente, niemals beide.3. Schließen Sie Teilnehmer des Feature-Experiments von den Web-Experimenten aus
Um Besucher, die dem Feature-Experiment zugeordnet wurden, von beiden Web-Experimenten auszuschließen, wenden Sie auf beide Web-Experimente die folgende Targeting-Bedingung an:- Targeting-Bedingung:
Campaigns → Feature flag→ Schließen Sie Besucher aus, die einer beliebigen Variation Ihresfeature_experiment_nameausgesetzt waren.
4. Berücksichtigen Sie den Synchronisierungszeitpunkt
Standardmäßig führt Kameleoon Web Experimentation bei jedem Seitenaufruf einen Remote-Synchronisationsaufruf durch, um zu prüfen, ob der Besucher bereits einem Feature-Experiment ausgesetzt war. Kameleoon nutzt diesen Aufruf, um zu entscheiden, ob es den Besucher in ein Web-Experiment einbezieht oder davon ausschließt. Wenn alle drei Experimente auf derselben Seite laufen, wird dieses Setup kompliziert: Die Web-Engine muss auf den serverseitigen Expositionsstatus warten, bevor sie entscheidet, ob sie den Besucher in ein Web-Experiment einbezieht, was zu Flickering oder verzögerten Inhalten führen kann.Wenn das Feature-Experiment und die Web-Experimente an unterschiedlichen Punkten der Customer Journey auslösen, zum Beispiel auf verschiedenen Seiten, fügen Sie auch dem Feature-Experiment eine Ausschluss-Targeting-Bedingung hinzu, die Besucher ausschließt, die bereits einem der Web-Experimente ausgesetzt waren.
Empfohlene Lösung
Um Flickering zu vermeiden und in Echtzeit zu entscheiden, geben Sie den Feature-Experiment-Status des Besuchers direkt im Frontend aus, ohne auf einen Remote-Aufruf zu warten.- Verwenden Sie die SDK-Methode
getEngineTrackingCode(). - Fügen Sie die Ausgabe in das HTML der Seite ein, idealerweise im
<head>-Bereich.