客户端测试与。 服务器端测试:双赢。

已发表: 2020-05-28
客户端测试与。服务器端测试:双赢。

在运行实验时,优化器可以在客户端测试和服务器端测试之间进行选择。

虽然您可以在服务器端运行几乎所有客户端测试,并通过客户端测试(使用拆分 URL 或重定向实验)进行一些轻量级后端实验,但这样做并不像您那样可行或健壮。我喜欢……因为对于任何假设,只有两者中的一个效果最好

选择合适的需要仔细考虑。 做出此选择时需要权衡许多方面。 查看设置对速度和 SEO 的影响、实验生命周期的工作量和时间要求、实验目标等。

让我们回顾一下这些因素,看看客户端测试与服务器端测试有何不同以及各自的优缺点。

客户端测试与。 服务器端测试

客户端测试和服务器端测试有什么区别?

在客户端测试中,一旦用户请求页面,您的服务器就会交付它。 但是,在这种情况下,您的实验工具会在您的用户浏览器中实现一些 Javascript,以更改服务器提供的内容,以便最终用户根据您的定位规则获得适当的变体。 (浏览器是“客户端”。)

另一方面,在服务器端测试中,一旦用户请求页面,您的服务器就会确定要交付的版本并仅交付该版本。 您的实验工具在服务器上运行,而不是在用户的浏览器中运行。

因为客户端测试只发生在浏览器级别的 JS 执行中,所以您只能测试表面级别的东西,例如布局、颜色和消息传递。 一些优化器将此类测试称为“化妆品”测试。

但是,这将打折客户端测试。

客户端测试可能看起来很简单,但它很有效。

很容易将客户端 A/B 测试视为任何人都可以做的“简单测试”。 同意:很容易实现。 有时,它可以小到测试不同的 CTA 按钮颜色或副本。

但无论是这个还是像测试重新设计或修改页面这样大的事情,客户端测试都会影响企业的底线

什么是客户端测试?

简而言之:客户端测试意味着优化发生在浏览器级别。 根据您设置的定位规则,访问者的浏览器将修改内容以提供预期的版本。

在本案例研究中,一家 SaaS 公司使用 Convert Experiences 作为其客户端 A/B 测试工具,将其主页上的潜在客户增长速度提高了 61%:

使用 Convert 进行客户端测试
资源

这是另一个 A/B 测试实验,在其定价页面上使用 Convert Experiences 作为同一 SaaS 公司的客户端测试工具,导致潜在客户增加 57%:

在 Convert 中增加线索客户端测试
资源

您在网上看到的大多数转化优化成功案例都是客户端测试,它们成功地优化了表面上的体验并赢得了大奖。

但是服务器端测试确实可以让您测试更多。

当您需要比前端进行更深入的测试时,您需要进行服务器端测试。

什么是服务器端测试?

服务器端测试是一种实验,其中 Web 服务器确定要交付的内容版本。 在服务器端测试中,所有优化都直接在服务器中实现,而不是在访问者的浏览器中。

让我们通过几个场景来看待这个问题。

如果您是一家电子商务企业,您可以使用客户端 A/B 测试实验来了解重新设计的搜索栏是否可以增加您的店内搜索(并带来更多销售)。

但是如果你想测试一种新的搜索算法,它可以带来更多相关的搜索结果(从长远来看,这会带来更多的销售),你需要运行一个服务器端 A/B 测试实验.

如果您是 B2B SaaS 企业,则可以运行客户端实验来确定某个 UVP 是否在您的主页上效果更好。 或者,如果一份长篇副本可以击败一份短篇副本。

但是,如果您想测试更快的后端并查看它是否可以提高保留率或参与度,则需要运行服务器端实验。 如果您想再次测试新的入职序列,则需要进行服务器端实验。 因为除了支持您的新入职工作流程外,服务器端测试还可以让您编排跨电子邮件、SMS 和其他在不同设备上进行的多渠道实验。

同样,如果您是 B2C SaaS 企业,您将能够运行客户端实验以了解某个定价计划是否比其他定价计划更有效。

但是,如果您想测试更好的推荐引擎,则必须进行服务器端测试。

正如您可以从服务器端测试的不同用例中了解的那样,它更倾向于构建更好的产品,而不是立即赢得转化。 与专注于即时销售或转化的客户端实验不同,服务器端实验专注于优化产品或解决方案,从而增加终身客户价值。

你可以说,如果客户端测试是针对营销人员的,那么服务器端测试主要是针对产品和工程团队的。 Convert Experiences 等 A/B 测试工具提供客户端和服务器端测试,以适应营销和工程团队。

免费试用 15 天!

因为测试如此深入的产品级更改需要的不仅仅是简单的基于浏览器的 JS 操作,它不能发生在浏览器内部,需要在服务器级别解决。

虽然服务器端测试有其独特的用例,但一些公司甚至使用它来运行外观测试——即使在客户端也能完美无故障地运行测试。

他们经常这样做是为了避免“闪烁”或“原始内容闪烁”现象。 当实验工具在最终用户已经看到它之后更改服务器提供的原始内容时,就会发生闪烁。 想象一下,您的用户看到某个标题,然后看到它瞬间变为另一个标题。 (是的,闪烁会严重影响用户体验!)

在其他时候,他们这样做是为了提高速度。 虽然测试不会减慢网站速度或导致严重的性能问题,但它会为网站的感知加载体验增加一两秒。 服务器端可以使这个速度更快。

有时,出于隐私或安全问题,公司可能会运行服务器端实验来代替客户端实验。 由于受众定位发生在服务器上,并且实验代码驻留在服务器端测试中的服务器上,因此公司可以更好地控制其隐私和安全方面。

但是实现服务器端实验并不总是可行的,尤其是当客户端也能做到的时候。

实施服务器端实验

在客户端测试中,您只需要有限的设计和开发资源来构建您的实验并执行它们。 如果您只是更改文本或更改按钮的颜色,您甚至不需要这些。 您需要做的就是:

1. 登录转换之类的工具。

2. 使用所见即所得编辑器并构建变体。

3. 设置实验(设置受众定位条件、实验时长、样本大小和拆分、置信度等)

获取 JS 代码并将其添加到您的网站。

并做了。

如果控制碰巧丢失,您将寻求开发帮助以推出获胜版本。

然而,服务器端测试并不是那么简单。

在这里,您必须:

1. 在转换体验中创建您的实验

2. 在您的服务器上开发和部署您的实验的所有变体。

3. 使用自定义代码在转换体验中映射您部署在服务器上的体验(通过使用您的实验 ID、实验工具中设置的变体 ID 等)。

在此类服务器端实验中,您的代码需要告诉服务器要向当前用户显示哪个变体。 您可以使用 cookie 来促进这一点。 例如,要使用 Convert 实现 A/B 服务器端测试,您必须使用以下数据设置 cookie:

服务器端实验
资料来源:使用 Convert 进行服务器端 A/B 测试

然后服务器将读取您的 cookie 并
相应地提供一个版本(以及所有后续会话)。

因为您的服务器决定了要发送给用户的版本,所以目标发生在服务器上(而不是像客户端测试那样在浏览器内部)。 您的测试精度将取决于您在服务器上对定位条件进行编码的能力。 通过客户端测试,您可以针对所有体验激光瞄准您的受众。

此外,在多服务器设置以及需要集成 CDN 时,服务器端测试可能会变得更加复杂。

4. 运行实验。

5.推出获胜版本并回滚失败者。

您可能还需要清理服务器,发布最终的推出/回滚。

如您所见,与客户端实验不同,服务器端实验的生命周期漫长而复杂。 这就是为什么进行服务器端测试需要深思熟虑的原因。

一般来说,如果客户端会做,你就不会运行服务器端实验……

甚至运行单个服务器端实验都具有挑战性,因为开发和推出它是一个更加资源密集和耗时的过程。

此外,如果您使用服务器端测试来测试可以在客户端轻松验证的更改,那么很难达到良好的测试速度和强大的实验程序。

此外,对于此类实验,当您拥有一些出色的客户端 A/B 测试工具时选择服务器端实验,这些工具可以让您在不影响您的 SEO 或速度的情况下无闪烁地运行它们并不能保证您的测试得到最佳利用带宽。

只有当服务器端实验为给定假设提供了强有力的理由时,它们才应该被首选。 他们这样做了很多次,因为许多影响企业底线指标的实验只能发生在服务器端。

那么告诉我们……您是否运行过任何服务器端测试? 如果是这样,这个过程中最困难的部分是什么? 哦,如果您想运行服务器端 A/B 测试,请查看 Convert(免费 15 天!)

高投资回报率 A/B 测试 免费试用