Improve trial upgrade conversion
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
import { getOpsPaidConversionKpi } from "@/lib/ops-conversion";
|
||||
|
||||
function assert(condition: unknown, message: string) {
|
||||
if (!condition) throw new Error(message);
|
||||
}
|
||||
|
||||
export function runTests() {
|
||||
const trialKpi = getOpsPaidConversionKpi([
|
||||
{ key: "landing_view", label: "访问落地页", count: 909, uniqueActors: 500 },
|
||||
{ key: "trial_created", label: "试用开通", count: 24, uniqueActors: 20 },
|
||||
{ key: "payment_success", label: "支付成功", count: 11, uniqueActors: 10 },
|
||||
]);
|
||||
|
||||
assert(trialKpi.rateLabel === "50.0%", "ops overview paid conversion should use trial unique actors before landing sessions");
|
||||
assert(trialKpi.subLabel === "试用 20 → 10 · 访客 2.0%", "ops overview paid conversion should keep visitor conversion as secondary context");
|
||||
|
||||
const signupKpi = getOpsPaidConversionKpi([
|
||||
{ key: "landing_view", label: "访问落地页", count: 100, uniqueActors: 80 },
|
||||
{ key: "signup_success", label: "注册成功", count: 8, uniqueActors: 8 },
|
||||
{ key: "payment_success", label: "支付成功", count: 2, uniqueActors: 2 },
|
||||
]);
|
||||
|
||||
assert(signupKpi.rateLabel === "25.0%", "ops overview paid conversion should fall back to signup unique actors when no trial data exists");
|
||||
assert(signupKpi.subLabel === "注册 8 → 2 · 访客 2.5%", "ops overview paid conversion should label the active denominator");
|
||||
}
|
||||
Reference in New Issue
Block a user