在iOS中使用Firebase远程配置测试/验证A/B测试

在iOS中使用Firebase远程配置测试/验证A/B测试,ios,firebase,conditional-statements,firebase-remote-config,Ios,Firebase,Conditional Statements,Firebase Remote Config,我正在使用Firebase远程配置在iOS上设置A/B测试 一切都设置好了,我正在读取iOS应用程序中的服务器端默认值 但在多个模拟器上尝试时,它们都读取默认值。 我怀疑,基于我的IP,谷歌知道我是同一个用户,所以也许他们只是在做他们自己的事情 如何测试/验证用户是否被分配到变量中? 以下是有关我的测试的更多信息: 因为我正在测试一个新特性(“按下”或“保持”),所以我没有一个没有任何更改的基线/默认值。 在“条件”中,我创造了两个条件。带“如果”的一个适用于 随机百分位50%的用户”。据我所知

我正在使用Firebase远程配置在iOS上设置A/B测试

一切都设置好了,我正在读取iOS应用程序中的服务器端默认值

但在多个模拟器上尝试时,它们都读取默认值。 我怀疑,基于我的IP,谷歌知道我是同一个用户,所以也许他们只是在做他们自己的事情

如何测试/验证用户是否被分配到变量中?

以下是有关我的测试的更多信息:

因为我正在测试一个新特性(“按下”或“保持”),所以我没有一个没有任何更改的基线/默认值。 在“条件”中,我创造了两个条件。带“如果”的一个适用于 随机百分位50%的用户”。据我所知,这将引导一半的流量进入第一种状态,其余的流量进入第二种状态。

在“参数”中,我创建了一个参数,上面第一个条件的值为“保持”,上面第二个条件的值为“按下”,默认值为“无”。

使用iOS应用程序中的参数键,在获取后,我总是在任何模拟器上获取“None”值。我还多次尝试卸载和安装该应用程序。总是“无”

Firebase将尝试确保同一用户每次都获得相同的价值/体验,因此我必须假设,基于模拟器,具有相同的IP(可能来自我的MAC的MAC地址)

我可以将该应用程序上传到TestFlight,并在多台设备上试用,但这似乎相当麻烦。
必须有一种方法来测试/验证或至少模拟我在我的条件下配置的50%分布。

在iOS上,您只需删除并重新安装应用程序,就可以看到不同的设置


尝试几次,在尝试6到7次之后,如果仍然没有看到不同的结果,那么您的设置可能有问题。或者你非常幸运,你应该去看看你当地的轮盘赌桌

事实上,我认为情况并非如此。您不希望框架将同一设备/用户重新分发到不同的变体。这是A/B测试101。您可能希望均匀分布,但如果用户/客户机在各种变体之间切换,他们可能会体验到不同的体验,这会让用户感到困惑,从而影响测试。您希望均匀分布,但已分配给某个变体的用户/客户端应始终发送给给定实验中的同一变体。这也是Oprimizely的做法。你是说Firebase不能这么做吗?事实上,我是对的。Firebase将使每个应用程序实例保持相同的变体。因此,如果您删除应用程序并重新安装,您将被重新分发。在这一部分,其他A/B测试框架通过结合使用用户、设备id和应用实例来识别用户,更好地解决了这一问题。在验证部分,我刚刚发现,在模拟器上删除/重新安装应用程序时,您将被发送到完全相同的变体。但在物理设备上执行此操作将触发重新分发。所以:我可以通过删除并重新安装应用程序在真实设备上测试发行版。不是在模拟器上。