2017-08-24 4 views
1

私は角型アプリをテストするために人形を使ってみようとしています。しかし、リンクをクリックしようとすると(対応するビューへのルーティングではなく)動作しません。角型アプリの人形のクリックリンクを使用しないでください

const browser = await puppeteer.launch({headless: false}); 
const page = await browser.newPage(); 
await page.goto('https://example.com', {waitUntil: 'networkidle'}); 
await page.focus('input[name="username"]'); 
await page.type('username'); 
await page.focus('input[name="password"]'); 
await page.type('password'); 
await page.click('button[type="submit"]'); 
await page.waitForNavigation({waitUntil: 'networkidle'}); 

// code below logs https://example.com 
// actual url is https://example.com/#home 
console.log(page.url()) 

const link = await page.$('a[href="#/other"]'); 
await link.click() 

// code below logs https://example.com 
// actual url is still https://example.com/#home 
console.log(page.url()) 

リンクをクリックすると、ページの更新のように感じられ、同じURLに再度移動します。 urlは変更されていない可能性があります。FrameNavigatedイベントは人形劇場から派遣されていません。だから、どのように私は角のルータの仕上げとすべての対応するajaxリクエストの終了を待つのですか?

答えて

0

良い一日 は、ナビゲーションを待つようにしてください

await page.waitForNavigation(5); 
関連する問題