我正在使用multiCapabilities运行,并且想知道是否有可能知道onPrepare函数和/或测试用例本身中当前使用的是哪种功能。
用例是我计划在chrome和android上运行测试。对于Chrome,应将窗口调整为所需的尺寸,但是在selendroid上运行相同的代码会出现异常,因为未实现该方法(在设备上调整窗口的大小也没有实际意义):
因此,我们的想法是通过某种方式包装像这样的简单检查中令人反感的代码:
if(browser != 'android') browser.driver.manage().window().setSize(480, 800);
还有其他用例,但这是目前最重要的用例。
我在本onPrepare
节中做了类似的事情,例如
// Return if current browser is IE, optionally specifying if it is a particular IE version
browser.isInternetExplorer = function(ver) {
var browserName, version, ie;
return browser.getCapabilities().then(function(s) {
browserName = s.caps_.browserName;
version = s.caps_.version;
ie = /i.*explore/.test(browserName);
if (ver == null) {
return ie;
} else {
return ie && ver.toString() === version;
}
});
};
然后,稍后,我将其像这样使用:
if (browser.isInternetExplorer()) {...}
对于android,这应该可以工作:
browser.isAndroid = function(ver) {
var browserName, version;
return browser.getCapabilities().then(function(s) {
browserName = s.caps_.browserName;
version = s.caps_.version;
return /droid/.test(browserName);
});
};
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句