Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/457.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
Javascript 在将多变量测试引入动态web应用程序时,您如何降低风险?_Javascript_Html_Testing_Google Website Optimizer_Multivariate Testing - Fatal编程技术网

Javascript 在将多变量测试引入动态web应用程序时,您如何降低风险?

Javascript 在将多变量测试引入动态web应用程序时,您如何降低风险?,javascript,html,testing,google-website-optimizer,multivariate-testing,Javascript,Html,Testing,Google Website Optimizer,Multivariate Testing,我的公司正在与一家多元测试供应商合作(我还不能透露是哪家),我被要求将他们的系统集成到我们的旗舰B2C商务网站中 通常,“集成”一词是一个繁重的术语。然而,这里它意味着在几个视图上添加一个标记,然后从该点开始退出循环。多变量实验将由我们的营销部门(和/或供应商)进行。我们的开发团队将不参与其中,甚至可能不知道它何时发生 本质上,我被告知要故意添加JavaScript注入攻击向量到我们的旗舰应用程序…希望一切顺利。我担心的与其说是恶意代码,不如说是无意中的错误。我们的CSS和基本页面布局已经一团糟

我的公司正在与一家多元测试供应商合作(我还不能透露是哪家),我被要求将他们的系统集成到我们的旗舰B2C商务网站中

通常,“集成”一词是一个繁重的术语。然而,这里它意味着在几个视图上添加一个
标记,然后从该点开始退出循环。多变量实验将由我们的营销部门(和/或供应商)进行。我们的开发团队将不参与其中,甚至可能不知道它何时发生

本质上,我被告知要故意添加JavaScript注入攻击向量到我们的旗舰应用程序…希望一切顺利。我担心的与其说是恶意代码,不如说是无意中的错误。我们的CSS和基本页面布局已经一团糟,我预计当其他人的多变量实验破坏了主页的外观时,会引起热议。更重要的是,有许多丑陋的AJAX和服务器端垃圾依赖于可预测的HTML元素、
id
属性等。。。因此,如果一个实验对HTML元素的更改过多,核心商务功能将以不可预测的方式完全崩溃

由于缺乏真正的测试环境,我的担忧被放大了。供应商进行过滤,以便只处理来自生产URL的AJAX调用。来自开发或QA环境的调用将被忽略。然而,这与拥有一个测试环境不是一回事。相反,这意味着生产现在是我们每个实验的测试环境

鉴于上述所有情况,是否有任何实践可用于缓解其中一些风险?多元测试是一个全新的领域,谷歌搜索的前几页由向首席信息官兜售流行语的阴暗顾问组成。对于最终负责关注风险的内部技术受众来说,没有太多的文章。在上述限制条件下,是否有适当的QA方法,或者在这种情况下,除了向后推(*)之外,是否没有其他选择


(*)注意:考虑到供应商关系的政治性,我们需要为推回建立一个非常严密的案例,而且它可能会被忽略。

您需要记住,多变量测试不是按照您的想法(或者不应该)进行测试。您不应该测试代码或内容。您正在测试访问者对该内容的反应

意思是。。。要由供应商测试的内容在部署到其平台之前仍应经过一些质量保证过程。因此,这应该表明,减轻您所担心的风险的最佳方法是将您自己注入到他们的测试/预发布周期中,以确保他们的代码在发布之前的安全性和稳定性。你不需要(也不想)用完整的回归测试或类似的东西来拖延他们的努力。但是,您可以主动设置一组高度特定的测试,以便动态内容在进入prod之前通过

如果供应商值得[在此插入任何材料],那么他们应该已经在其流程中说明了这一点,或者至少能够满足此类要求。在任何入侵风险代码被注入之前,要求你得到一些鸟眼信号并不过分


或者。。。签署弃权书,免除您在供应商履行职责期间的任何安全或履约责任。:)

谢谢。事实证明,供应商确实有办法在启动时让实验“不活动”,但如果他们在我们的网站URL中添加了一个特殊的CGI参数,我们的QA团队仍然可以看到。我们还应该能够“激活”实验,这样它们将在我们的QA和UAT服务器请求时启动。我不太高兴的是,在我们做出每一项改变之前,我们现在都需要与外界进行协商和协调(希望他们也能为我们这样做)。。。但这并不像我昨天早上的印象那么可怕。它的开销更大,但理论上,对每个人都好。任何时候,一家企业都可以量化他们所依赖的轶事或主观信息,这将改善情况。如果你有任何后续行动,请随时打电话给我!