我有一个signup.js测试,可以自动注册我的网络应用程序(显然)。我们目前正在测试一个新流程,它会将您带到另一个页面('。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>
});
任何其他想法非常感谢!
答案 0 :(得分:2)
我的偏好是隐藏每个页面中的一些信息,以便您可以干净地打开它们。 E.g。
<span id="version1"></span>
VS
<span id="version2"></span>
然后,在提交表格后:
casper.then(function(){
if (this.exists('#version2')) {
testNewSite(this);
} else {
testOldSite(this);
}
});
但检测你已经知道的东西只在其中一个页面中,比如&#34; classic.png&#34;你在问题中表明,也没关系。 (它只是感觉有点脆弱:Web开发团队可以通过重命名该图像,或者在新版本中放置具有该名称的图像等来破坏您的测试。)