2011-03-11 224 views
2

我们刚刚开始使用Selenium来测试我们的网站,并且它的工作非常好,除了它在我们引入AB测试时打破了1/2的时间。在使用Selenium进行测试时,你们如何处理Ab测试?如何在运行AB测试时使用Selenium处理测试?

谢谢!

+0

这是一个相关的帖子:http://stackoverflow.com/questions/12078675/writing-integration-tests-against-external-resources-which-are-a-b-testing – David 2015-05-05 21:13:50

回答

2

这真的取决于你在找什么。我建议的三个选项之一:

  1. 禁用A/B测试的硒。测试的关键之一是确定。随机回报,你将无法对自己的结果充满信心。为了做到这一点,我会传入一个参数,例如http://my.website.com/?ab=0。这总是可以选择一个将要测试的特定路径。

  2. 为Selenium建立一个参数来“选择”ab测试用例。 http://my.website.com/?ab[show-panel]=1。再次,这会给你一个确定性的结果,并允许你实际测试你有的ab测试用例。这也可以通过在您的设置中使用Cookie来创造。

  3. 黑客 - 不要“检查”您的网站的a-b测试方面,并建立硒来浏览它们。这取决于你正在测试的内容,但如果它是图像或文本,这应该不是问题。不确定性的工作流程不应该被测试。

希望这些想法有所帮助。这里的外延是确保为测试保持确定性。随机只会让你误入歧途。

+0

好的建议。但是,有一个问题是当你想在A流和B流的测试覆盖范围内。那里最好的方法是什么?选项是编写单独的测试,单独的页面对象,多值定位器(OR'd条件以匹配A/B流),或者使用相同的页面对象,但使用内部逻辑使其复杂化以确定A/B测试流程以抽象细节从适用的测试中。 – David 2013-04-05 01:00:22

+0

对于面向高级页面对象的方法来处理A/B,可能需要查看:http://engineeringquality.blogspot.com/2012/06/creating-generic-advanced-page-factory.html – David 2015-05-05 21:15:07

相关问题