我试图在safari上自动化我的应用程序的一些测试,并开始从paypal寻找selenium和SeLion来帮忙。我注意到SeLion库有@MobileTest装饰器,但似乎每个测试只能指定一个设备。如果我想在iPad和iPhone上测试我的应用程序,那么编写测试的最佳方法是什么?我基本上只需编写像
这样的包装器方法@Test
@MobileTest(appName = "safari", device = "iphone:8.1",
deviceType = "iPhone Simulator")
public void test() {
commonTest()
}
@Test
@MobileTest(appName = "safari", device = "ipad",
deviceType = "iPad Simulator")
public void test() {
commonTest()
}
我认为不可能做到
//test in series?
@Test
@MobileTest(appName = "safari", device = "iphone")
@MobileTest(appName = "safari", device = "ipad",
deviceType = "iPad Simulator")
public void test() {
commonTest()
}
答案 0 :(得分:1)
正确。
您不能在同一个Test方法上使用两个MobileTest注释。
此外,在目前的SeLion版本中,对于多个移动设备使用相同的测试方法并不是一种简单的方法。这就是说,目前有一个分支和拉取请求打开,这将使设备可以配置超出注释 - 添加选项以通过testng套件文件,Java系统属性或环境变量指定它。一旦这个代码进入,你将有更好的选择。
请关注this PR