我想根据我正在运行的功能在onPrepare函数中运行不同的函数。我还希望能够从命令行设置功能。例如,我现在通过输入“量角器”来运行每个测试套件。像“protract -android”或“protractor directConnect = true”之类的东西或者以类似方式起作用的任何东西都是我正在寻找的东西。
然后在onPrepare中我有一个最大化我的窗口的功能,当我运行我的android测试时它将无法工作。我正在寻找一个解决方案,以便当我在android上运行测试时,它只是忽略了那段代码。
答案 0 :(得分:1)
在量角器中,您可以在config.js文件中使用global variables
对象params
。尝试以下解决方案来解决您的问题。
在config.js文件中创建一个params
对象,其新变量为android
。以下是一个演示配置文件。
exports.config = {
seleniumAddress: 'http://localhost:4444/wd/hub',
capabilities: {
'browserName': 'chrome'
},
onPrepare: function () {
if(browser.params.android == 'true'){
//do whatever code you need to execute
}else{
}
},
params: {
android: 'false',
}
}
现在,您可以在运行量角器测试时将android
变量的值作为commond line参数传递。
protractor config.js --params.android true