JavaScript   发布时间:2022-04-16  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了javascript – 多功能和茉莉花聚焦测试大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
故事:

我们有一个相当巨大的端到端量角器测试代码库.我们有两个配置 – 一个是“本地” – 使用directConnect在Chrome和Firefox中运行测试,另一个是“远程” – 在远程硒服务器上运行测试 – BrowserStack.

我们的“本地”配置被配置为在Chrome和一些在Firefox中运行一些测试 – 因为我们真的不能在Chrome中运行一些测试 – 例如keyboard shortcuts don’t work in Chrome+Mac.运行需要在Firefox中使用键盘快捷键的测试是一种解决方法,直到链接的chromedriver问题解决了.

以下是配置的相关部分:

var firefox_only_specs = [
    "../specs/some_spec1.js","../specs/some_spec2.js","../specs/some_spec3.js"
];

exports.config = {
    directConnect: true,multiCapabilities: [
        {
            browserName: "chrome",chromeOptions: {
                args: ["incognito","disable-extensions","start-maximized"]
            },specs: [
                "../specs/**/*.spec.js","../specs/**/**/*.spec.js","../specs/**/**/**/*.spec.js"
            ],exclude: firefox_only_specs
        },{
            browserName: "firefox",specs: firefox_only_specs
        }
    ],// ...
};

问题:

现在,问题是,如果我正在调试一个单独的测试,或者想要运行一个单独的测试 – 我标记为焦点(通过fdescribe / fit) – 但量角器启动两个驱动程序会话 – 一个用于Chrome和另一个用于Firefox,使用两种配置的功能:

Running "protractor:local" (protractor) task
[launcher] Running 2 instances of WebDriver

...
------------------------------------
[chrome #1] PID: 2329
[chrome #1] Using ChromeDriver directly...
[chrome #1] Spec started

...

------------------------------------
[firefox #2] PID: 2330
[firefox #2] Using FirefoxDriver directly...
[firefox #2] Spec started

...

问题:

有没有办法告诉量角器使用唯一一个配置了重点规格的功能?

使用当前最新的量角器3.0.0.

希望问题很清楚.如果您需要任何其他信息,请告诉我们.

解决方法

我想知道你可以做些什么来包装它的语句,如:
onPrepare: function() {
    browser.getCapabilities().then(function(caps) {
        global.browserName = caps.caps_.browserName;
    });

    global.firefoxOnly = function(name,testFunction) {
        if (browserName === 'firefox') {
            return it(name,testFunction);
        } else {
            return xit(name,testFunction).pend('firefox only');
        }
    };
}

那么当你写一个测试,而不是使用像:

describe('when I do something',function() {
    firefoxOnly('it should do the right thing',function() {
        doSomething();
        expect(thing).toBe(right);
    )};
});

我不知道这是否真的有效,只是把它扔在那里.事实上,当我回到我的测试计算机并尝试出来,我将有兴趣添加一个像wip这样的功能,而不是使用Xit来自动挂起我的ATDD测试!

大佬总结

以上是大佬教程为你收集整理的javascript – 多功能和茉莉花聚焦测试全部内容,希望文章能够帮你解决javascript – 多功能和茉莉花聚焦测试所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。