Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jestjs 不支持的目标类型:布尔型,使用puppeter waitFor函数_Jestjs_Puppeteer - Fatal编程技术网

Jestjs 不支持的目标类型:布尔型,使用puppeter waitFor函数

Jestjs 不支持的目标类型:布尔型,使用puppeter waitFor函数,jestjs,puppeteer,Jestjs,Puppeteer,我正在尝试做下面这样的事情 const url = await page.url(); await page.waitFor(url === 'localhost:3000/blogs'); 我也试过了 await page.waitFor(url).toEqual('localhost:3000/blogs'); 并且还使用waitForFunction方法尝试了所有这些场景,但无法使任何场景正常工作。该函数接受选择器、函数或超时。若你们想知道url是否等于某个东西,那个么就为它写一个函数

我正在尝试做下面这样的事情

const url = await page.url();
await page.waitFor(url === 'localhost:3000/blogs');
我也试过了

await page.waitFor(url).toEqual('localhost:3000/blogs');
并且还使用
waitForFunction
方法尝试了所有这些场景,但无法使任何场景正常工作。

该函数接受选择器、函数或超时。若你们想知道url是否等于某个东西,那个么就为它写一个函数。将url作为参数传递,以便可以在浏览器上下文中读取它

const url = await page.url();
await page.waitFor((url)=> url === 'http://localhost:3000/blogs', url); // <-- use a function
注意,由于您使用
=
匹配字符串,请确保包含
http://
,因为
location.href
将输出带有协议的url

如果您想使用jest,那么可以使用
expect
并将其包装在
it
块中

it('should contain specific url', async () => {
    const url = await page.url();
    expect(url).toContain('localhost:3000/blogs');
});
这是一个文档。

函数接受选择器、函数或超时。若你们想知道url是否等于某个东西,那个么就为它写一个函数。将url作为参数传递,以便可以在浏览器上下文中读取它

const url = await page.url();
await page.waitFor((url)=> url === 'http://localhost:3000/blogs', url); // <-- use a function
注意,由于您使用
=
匹配字符串,请确保包含
http://
,因为
location.href
将输出带有协议的url

如果您想使用jest,那么可以使用
expect
并将其包装在
it
块中

it('should contain specific url', async () => {
    const url = await page.url();
    expect(url).toContain('localhost:3000/blogs');
});

这是的文档。

我得到的
url
未定义。我认为这与异步等待部分有关。是的,我知道做笑话的部分!我只是想看看是否有可能在waitFor中进行测试,修复了这个问题,但现在测试超时了。它因为某种原因被悬挂着。我试图在waitFor函数中控制台记录url,但无法获取值。waitFor将在浏览器上下文中运行代码,如果没有事件侦听器,您无法控制台记录,也无法确保使用正确的url和http等,就像我在第二个示例中使用的那样。我得到的
url
未定义。我认为这与异步等待部分有关。是的,我知道做笑话的部分!我只是想看看是否有可能在waitFor中进行测试,修复了这个问题,但现在测试超时了。它因为某种原因被悬挂着。我试图在waitFor函数中控制台记录url,但无法获取值。waitFor将在浏览器上下文中运行代码,如果没有事件侦听器,您无法控制台记录,也请确保使用正确的url和http等,就像我在第二个示例中使用的那样。