Angularjs 量角器等待角度加载

Angularjs 量角器等待角度加载,angularjs,protractor,sleep,angularjs-e2e,Angularjs,Protractor,Sleep,Angularjs E2e,我的测试是在非角度页面中登录,然后进入角度页面。 目前,为了使测试正常工作,我正在使用sleep和timeout(登录之后): 我已尝试移除其中的每一个,并尝试了预期条件: var EC = protractor.ExpectedConditions; var profilePhoto = element(By.css(".profile-photo")); browser.wait(EC.visibilityOf(profilePhoto), 15000); 还尝试使用 browser.wa

我的测试是在非角度页面中登录,然后进入角度页面。 目前,为了使测试正常工作,我正在使用sleep和timeout(登录之后):

我已尝试移除其中的每一个,并尝试了预期条件:

var EC = protractor.ExpectedConditions;
var profilePhoto = element(By.css(".profile-photo"));
browser.wait(EC.visibilityOf(profilePhoto), 15000);
还尝试使用

browser.waitForAngular();
但是-任何没有睡眠和超时的尝试都会导致失败和失败

Error while waiting for Protractor to sync with the page: "angular could not be found on the window"

我的问题是-我如何确保登录后没有“睡眠”或“超时”进入主页

今天早些时候我也有同样的问题。添加
browser.ignoreSynchronization=true在尝试登录前添加
浏览器。请稍候…
在尝试登录后修复问题:

// non-angular page
browser.get("/login");

// ignore synchronization since we're transitioning from a non-angular page to an angular page
browser.ignoreSynchronization = true;

// login
element(by.id("email")).sendKeys("username");
element(by.id("password")).sendKeys("password");
element(by.partialButtonText("Login")).click();

// wait
var EC = protractor.ExpectedConditions;
browser.wait(EC.visibilityOf(element(by.id("dashboard"))), 10000);

当您处于非角度页面时,请使用-
browser.ignoreSynchronization=true当您处于角度页面时,请使用
false
。你试过这样做吗?谢谢,你可以在我放的代码片段上看到“false”。“false”在“on prepare”上。我的意思是,当您切换到非角度页面时,您是否正在更改该值?我从非角度切换到角度页面,因此它是第一个“browser.ignoreSynchronization=true”,单击“login”后,我将设置为“browser.ignoreSynchronization=false”,正如您在第一个代码段中所看到的那样。您知道这一点吗?我有完全相同的问题。我正在使用Angular 2.0 beta 13。仍然会得到相同的错误。虽然看起来像是“browser.ignoreSynchronization=true;”的位置不会影响结果。我正在非角度登录页面上使用angular v1.5.0-rc.0和Gractor v2.5.1以及asp.net mvc。登录后是否将browser.ignoreSynchronization设置回false?
// non-angular page
browser.get("/login");

// ignore synchronization since we're transitioning from a non-angular page to an angular page
browser.ignoreSynchronization = true;

// login
element(by.id("email")).sendKeys("username");
element(by.id("password")).sendKeys("password");
element(by.partialButtonText("Login")).click();

// wait
var EC = protractor.ExpectedConditions;
browser.wait(EC.visibilityOf(element(by.id("dashboard"))), 10000);