【发布时间】:2019-05-15 13:18:32
【问题描述】:
我想创建一个类来插入@BeforeTest Capabilities。参考下面的代码,很容易将测试插入@Test。
没有TestNG 一切正常,但它不适用于TestNG。
也许我误解了什么?
能力类
public class test {
public static AndroidDriver<AndroidElement> Capabilities() throws MalformedURLException {
File f =new File("src");
File fs = new File(f,"ApiDemos-debug.apk");
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(MobileCapabilityType.DEVICE_NAME, "demo");
capabilities.setCapability(MobileCapabilityType.APP, fs.getAbsolutePath());
AndroidDriver<AndroidElement> driver= new AndroidDriver<>(new URL("http://127.0.0.1:4723/wd/hub"),capabilities);
return driver;
}
从测试扩展能力的测试示例
public class swiping extends test {
public static void main(String[] args) throws MalformedURLException, InterruptedException {
AndroidDriver<AndroidElement> driver=Capabilities();
driver.manage().timeouts().implicitlyWait(10,TimeUnit.SECONDS);
driver.findElementByXPath("//android.widget.TextView[@text='Views']").click();
driver.findElementByXPath("//android.widget.TextView[@text='Date Widgets']").click();
driver.findElementByAndroidUIAutomator("text(\"2. Inline\")").click();
driver.findElementByXPath("//*[@content-desc='9']").click();
Thread.sleep(1000);
TouchAction t=new TouchAction(driver);
WebElement first=driver.findElementByXPath("//*[@content-desc='15']");
WebElement second=driver.findElementByXPath("//*[@content-desc='45']");
t.longPress(longPressOptions().withElement(element(first)).withDuration(ofSeconds(2))).moveTo(element(second)).release().perform();
}
}
【问题讨论】:
-
我相信这是您在没有 Testng 的情况下使用的方法。您能否分享一下您使用 Testng 尝试过的方法?
-
是的,这个例子没有TestNg,因为我不知道如何正确地将具有Capabilities的类引入@Beforetest
标签: java selenium testng appium