web-dev-qa-db-ja.com

分度器-無効なSSL証明書

アプリケーションがあり、これをローカルでテストすると、無効なSSL証明書の警告が表示されます。通常、私は例外を追加してそれを続行します。しかし、とにかく分度器がこれを無視することはありますか?

SeleniumでSSLを無視できる機能をいくつか見ましたが、分度器には何もありません。

9
Joseph

これは私にとっては(confファイルで)機能します:

capabilities: {
    browserName : 'firefox',
    marionette : true,
    acceptInsecureCerts : true
}

お役に立てば幸いです。

12
M. Hudson
capabilities: {
    browserName: 'chrome',
    chromeOptions: {
        // for ci test
        args: ['--headless', 'no-sandbox', "--disable-browser-side-navigation",
            "--allow-insecure-localhost"
            /// for https sites: ignore ssl on https://localhost...
            /// further args please see https://peter.sh/experiments/chromium-command-line-switches/
        ]
    }
}

エラーが発生した場所をテストするためにスクリーンショットを撮りたいと思うかもしれません

import fs from 'fs';

function writeScreenShot(data, filename) {
    const stream = fs.createWriteStream(filename);
    stream.write(new Buffer(data, 'base64'));
    stream.end();
}

export function takeScreenshot(browser, path){
    browser.takeScreenshot().then((png) => {
        writeScreenShot(png, path);
    });
}
1
Yuqiu G.

試す

webdriver-manager update --ignore_ssl

またはFirefox用にprotractor.conf.jsを設定します

var makeFirefoxProfile = function(preferenceMap) {
    var profile = new FirefoxProfile();
    for (var key in preferenceMap) {
        profile.setPreference(key, preferenceMap[key]);
    }
    return q.resolve({
        browserName: 'firefox',
        marionette: true,
        firefox_profile: profile
    });
};

exports.config = {
    seleniumAddress: 'http://localhost:4444/wd/hub',
    framework: 'jasmine2',
    getMultiCapabilities: function() {
        return q.all([
            makeFirefoxProfile(
                {
                    'browser.acceptSslCerts': true
                }
            )
        ]);
    },
}
0
andriyze