首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在PhantomJS中使用AVA

在PhantomJS中使用AVA
EN

Stack Overflow用户
提问于 2017-04-22 03:27:08
回答 1查看 228关注 0票数 1

我正在尝试使用AVA和PhantomJS (实际上是phantomjs-node)在网页上运行一些测试。

我必须创建文件,第一个是使用Phantom (load-page.js)加载网页的模块。

代码语言:javascript
复制
    const phantom = require('phantom');

    /**
     * Loads a page using a Promise and jsdom
     * @param {string} url The page to be loaded
     */
    export default function loadPage(url, callback, thenCallback) {
        return new Promise(async (resolve, reject) => {
            const instance = await phantom.create();
            const page = await instance.createPage();

            const status = await page.open('https://webslides.tv/');
            if(status != 'success') reject('Error loading '+url);

            await page
                .evaluate(callback)
                .then(await thenCallback);

            await instance.exit();

            resolve(true);
        });
    }

第二个是测试:

代码语言:javascript
复制
    import test from 'ava';
    import loadPage from '../helpers/load-page';

    test('prueba', async t => {
        const check = count => {
            t.is(count.childNodes.length, 9);
        }
        await loadPage('http://webslides.tv', () => {
            const ws = document.querySelector('#webslides');
            return ws;
        }, async (count) => {
            await check(count);
        });
    });

是否可以在页面加载后运行测试?我想用同一个页面运行几个测试,但我不想每次都加载页面。

谢谢

EN

回答 1

Stack Overflow用户

发布于 2017-05-06 15:27:30

您需要更改您的帮助器以不计算任何内容。然后,您可以重用页面实例:

代码语言:javascript
复制
import test from 'ava';
import loadPage from '../helpers/load-page';

let page;

test.before(async t => {
    page = await loadPage('http://webslides.tv');
});

test('prueba', async t => {
    const count = await page.evaluate(() => {
        const ws = document.querySelector('#webslides');
        return ws;
    });

    t.is(count.childNodes.length, 9);
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43550560

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档