Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Selenium 如何在appium中使用Windows元素创建对象存储库_Selenium_Appium_Winappdriver - Fatal编程技术网

Selenium 如何在appium中使用Windows元素创建对象存储库

Selenium 如何在appium中使用Windows元素创建对象存储库,selenium,appium,winappdriver,Selenium,Appium,Winappdriver,最近,我将角色从使用selenium构建基于web的应用程序切换到使用Appium/WinAppDriver构建用于windows桌面应用程序的自动化 在selenium方面,我总是使用特定的结构来构建页面对象/操作。下面将生活在一个“对象存储库”类中,并按页面列出我的所有对象 public static By SubmitBtn = By.Id("submit"); 然后,我将创建将其中一个对象作为输入的方法。这里有一个简单的方法,我会用它作为点击 public void C

最近,我将角色从使用selenium构建基于web的应用程序切换到使用Appium/WinAppDriver构建用于windows桌面应用程序的自动化

在selenium方面,我总是使用特定的结构来构建页面对象/操作。下面将生活在一个“对象存储库”类中,并按页面列出我的所有对象

public static By SubmitBtn = By.Id("submit");
然后,我将创建将其中一个对象作为输入的方法。这里有一个简单的方法,我会用它作为点击

        public void Click(By Control)
        {
             TestInitiator.driver.FindElement(Control).Click();
        }
然后在我的测试中,它看起来像:

action.Click(DemoObject.SubmitBtn);

我希望使用Appium与Windows元素交互,而不是与web元素交互,来复制此功能。有人能帮助我使用创建对象存储库所需的语法吗?与selenium的方法相同?

你的术语有误导性-我认为你指的是移动本机应用程序元素,而不是“Windows”元素。这基本上是以相同的方式完成的,Appium驱动程序对页面工厂有着相同的基本想法,但是措辞有点不同,XPath也有很大的不同(对于本机应用程序)。您将使用类似于
MobileElement
@AndroidFindBy
AppiumDriver
的东西。如果你看,你会发现很多例子。@BillHileman我不是在测试手机。我正在测试windows桌面应用程序。Selenium仅与web浏览器交互。是一个不错的选择,但它需要一个更昂贵的Visual Studio许可证。@Greg Burghardt,编码的UI测试将在将来被弃用。Visual Studio 2019 Enterprise将是支持编码UI测试的最后一个版本。微软自己建议用Winappdriver代替编码的UI。@PixelPlex:很高兴知道。你的术语有误导性,我想你指的是移动原生应用程序元素,而不是“Windows”元素。这基本上是以相同的方式完成的,Appium驱动程序对页面工厂有着相同的基本想法,但是措辞有点不同,XPath也有很大的不同(对于本机应用程序)。您将使用类似于
MobileElement
@AndroidFindBy
AppiumDriver
的东西。如果你看,你会发现很多例子。@BillHileman我不是在测试手机。我正在测试windows桌面应用程序。Selenium仅与web浏览器交互。是一个不错的选择,但它需要一个更昂贵的Visual Studio许可证。@Greg Burghardt,编码的UI测试将在将来被弃用。Visual Studio 2019 Enterprise将是支持编码UI测试的最后一个版本。微软自己建议用Winappdriver代替编码的用户界面。@PixelPlex:很高兴知道。