Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java AB测试框架创建_Java_Spring Boot_Testing_Open Source_Ab Testing - Fatal编程技术网

Java AB测试框架创建

Java AB测试框架创建,java,spring-boot,testing,open-source,ab-testing,Java,Spring Boot,Testing,Open Source,Ab Testing,在我的一个应用程序中,主页布局是从后端用java编写的店面应用程序加载的。此应用程序以JSON的形式生成布局,其中包含小部件,应用程序使用并呈现布局 我被指派编写一些AB测试框架。如果有任何开源工具,我可以用来拦截我的JSON进行AB测试,或者我应该为此编写一些开箱即用的解决方案 您听到的大多数AB测试都是指通过在浏览器中注入JS来支持的客户端测试。在Java应用程序中进行测试需要不同的方法 您可以使用免费的开源工具,例如。这是一个基本的流量拆分器,使用确定性散列算法,因此只要您继续使用相同的用

在我的一个应用程序中,主页布局是从后端用java编写的店面应用程序加载的。此应用程序以JSON的形式生成布局,其中包含小部件,应用程序使用并呈现布局


我被指派编写一些AB测试框架。如果有任何开源工具,我可以用来拦截我的JSON进行AB测试,或者我应该为此编写一些开箱即用的解决方案

您听到的大多数AB测试都是指通过在浏览器中注入JS来支持的客户端测试。在Java应用程序中进行测试需要不同的方法

您可以使用免费的开源工具,例如。这是一个基本的流量拆分器,使用确定性散列算法,因此只要您继续使用相同的用户ID,就可以获得一致的变化

如果您需要更强大的功能,您可能需要使用商业软件包。对于应用程序内测试(移动、web、后端),通常采用以下两种形式中的一种:

  • API方法:您的应用程序可以向供应商管理的服务器发送请求,请求当前用户的变体。这里的缺点是每次需要用户的变体时都会等待响应,这会对性能造成影响
  • SDK:在Java代码库中实现的供应商提供的SDK,它使用确定性散列来确定用户的变量。SDK将需要在运行实验之前(以及在某些更新频率上)从服务器检索某种类型的数据文件,其中包含实验状态、流量分配等,但随后允许您确定内存的变化(无阻塞网络调用)。跟踪调用可以异步发送
  • 与免费解决方案相比,商业软件包将为您带来一些好处,如用于管理实验的用户友好门户网站、统计计算器、QA工具、功能标志、用户权限、持续更新和支持等

    免责声明:我为Optimizely工作,该公司为AB测试和功能标志开发