【发布时间】:2013-11-05 18:43:13
【问题描述】:
我有一个 signup.js 测试,可以自动注册我的网络应用程序(显然)。我们目前正在 a/b 测试一个新流程,该流程会将您带到不同的页面('.com/signupa' 与 '.com/signupb'),我想知道在我的测试中反映这一点的最佳方法是什么。
选项:
- 使用
evaluateOrDie并让它死在.com/signupb(这看起来很愚蠢) -
对 .com/signupb 进行充实测试,如果它通过了该测试(这可能吗?),例如......
casper.waitForResource("classic.png", function success() { this.echo('on the old signup flow '); <continue with regular signup test> }, function fail() { this.test.assertExists("classic.png"); <do something else> });
非常感谢任何其他想法!
【问题讨论】:
-
我去发布一个答案,但意识到我不知道“在我的测试中反映这个”是什么意思? (如果您想确保每个都经过测试,您似乎可以直接调用 '.com/signupa' 和 '.com/signupb'。)
-
@DarrenCook 对不起,应该更清楚。 a/b 测试在您提交注册表单后进行。所以流程是 /join -> 填写一些字段 -> 点击提交 -> 然后你会得到 /signupa 或 /signupb。这意味着我不能真正直接打电话给他们。我想我想知道在提交时是否有办法让 casper 评估我正在获取的页面(a 或 b),然后相应地运行测试。
标签: automated-tests phantomjs casperjs