2
我有一個測試,我想通過命令行傳遞語言鍵,並讓瀏覽器在chromeOption參數中使用該語言鍵。我可以用參數改變量角器的配置能力嗎?
我該如何使用en-us的默認值,但是要通過我想要的任何語言並根據傳入的內容將其從默認值更改爲默認值?
我在我的conf文件中有這樣的:
exports.config = {
...
capabilities: {
browserName: 'chrome',
chromeOptions: {
args: [
'lang=en-419',
]
}
},
params: {
language: {
lang: 'en-US'
}
},
...
};
我想運行此命令,並讓瀏覽器切換到ES-419這個測試的運行
protractor conf.js --params.language.lang=es-419
根據傳遞的語言,我需要添加什麼來修改功能,如果沒有任何內容被傳遞,那麼en-us是默認值?
我已經嘗試了一些東西,這些東西會崩潰,像'對象沒有方法功能'或'chromeOptions undefined'。
browser.capabilities.chromeOptions.args.update(browser.params.login.lang);
browser.getCapabilities().then(function(){
chromeOptions.args = browser.params.language.lang;
});
browser.manage().capabilities.chromeOptions.args(browser.params.language.lang);
capabilities: {
chromeOptions: {
args: { 'lang=' + this.params.language.lang
}
}
}
任何想法?
您好!謝謝你的答案。 你可以擴展你如何運行?只要量角器conf.js --params.langauge.lang ='es-419'?我甚至會傳遞一個參數,或者只是將某些東西硬編碼到文件中?無論我傳遞這個參數,還是更改getLangParam行,我似乎都無法改變語言。看起來args部分甚至不知道lang是什麼。 如果我這樣做: browser.getProcessedConfig()。then(function(configData){ console.log(configData.capabilities); }); 我得到lang = undefined。 對不起,如果我不理解,我是新來的。 – user2020347
是的,你可以運行量角器conf.js --params.language.lang ='es-419'。對不起,我不熟悉Chrome自帶的lang選項。我認爲你已經能夠通過對你顯示的值進行硬編碼來改變語言,並且只需要知道如何在命令行中傳遞它們即可。 – kennbrodhagen