我试图对我在safari上的应用程序进行一些测试自动化,并开始从paypal寻求硒和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()
}
最佳答案
正确。
您不能在同一Test方法上使用两个MobileTest批注。
另外,在当前的SeLion版本中,没有一种简便的方法可以对多个移动设备使用相同的测试方法。这就是说,当前有一个打开的分支和拉取请求,它将使设备在注解之外可配置-添加了通过testng套件文件,Java系统属性或环境变量指定设备的选项。将此代码加入后,您将有更好的选择。
请按照this PR