1
我跑量角器这样广东话设置永久性的BaseURL在量角器
protractor --params.env=q
Q表示QA。这量角器的conf
var CommonPageObject = require('./e2e/commonPageObject');
suites: {
login: './e2e/account/login/*.js'
},
//for console params. example console command: protractor --params.env=q
params: {
env: 'qa',//can be local, prod or qa default is qa for environment
},
onPrepare: function() {
var commonPageObject = new CommonPageObject();
commonPageObject.prepareVariables();
}
这是常见的网页
this.prepareVariables = function() {console.log("xx",browser.params.env);
var env = browser.params.env;
this.setEnvironment(env);
this.setBaseUrl(env);
};
//can be local, prod or qa. local = 2, qa = 0, prod=1
this.setEnvironment = function (env) {
if(env.includes("l")){
environment = 2;
}
else{
if(env.includes("p")){
environment = 1;
}
else{// qa
environment = 0;
}
}console.log("environment",environment);
};
//to get enviroment qa=0, prod=1, local=2 default=qa
this.getEnvironment = function() {
return environment;
};
this.setBaseUrl = function (env) {
if(env.includes("q")){
baseUrl = "http://xxxx.qa.xxx.com:8080";
}
else{
if(env.includes("p")){
baseUrl = "https://xxxxx.com";
}
else{
baseUrl = "localhost:8080";
}
}console.log("baseUrl",baseUrl);
};
this.getBaseUrl = function() {console.log("getBaseUrl",baseUrl);
return baseUrl;
};
输出是thhat protractor --params.env=q
当我运行
xx q
environment 0
baseUrl http://xxx.qa.xxxx.com:8080
Started
getBaseUrl undefined
FgetBaseUrl undefined
F
测试开始时,它变得不确定。那是什么?为什么commonpage对象页面变量不能保存在堆栈中?那么,我应该在每个测试前的每个测试中调用这些方法吗?或者我做错了什么?