当前位置: 首页 > 知识库问答 >
问题:

如何在一个类中存储两种产品(Web和移动应用程序)的Selenium定位器?

融修平
2023-03-14

我们有一个网站也有移动站点(不是应用程序),我使用的是C#Selenium WebDriver,我们的自动化框架有两个类来描述站点中的页面,现在我想使用从一个到另一个规划的相同类,但是DOM和定位器(cssSelector,Id…)它们是不同的。所以我想把定位器从我的代码中带到一个数据源,但是我怎么能把两个数据源(移动和网络)链接到一个类上呢?如果你有一个简单的例子,这将是很好的谢谢Eyal

共有1个答案

毋弘光
2023-03-14

您可以实现工厂。

在您的情况下,您将获得两个类:一个用于web,一个用于移动应用程序。

当获取定位器而不是实例化类时,您可以使用工厂来获取适当的定位器。它将检查平台并返回正确的对象。

 类似资料:
  • 我想单击webmail应用程序中的search auto complete。

  • 我正试图从一个使用VBA中的此代码的网站获得邮政编码: 然而,这给了我一个错误: 我假设这个错误只是告诉我XPath是错误的一种简单方式。由于我不是XPath的天才,我只需安装FireBug和FirePath add ons,它们为我生成了上面的XPath。问题是,当我将XPath输入到FirePath并点击evaluate时,它可以很好地找到邮政编码。

  • 我有两个应用程序需要通过深层链接进行通信:Flutter Web应用程序和iOS上的Flutter移动应用程序。 基本上,流程需要是我单击在移动浏览器上运行的Web应用程序中的一个按钮,然后应该触发移动应用程序启动。 我遵循了设置深度链接的指定说明,并有两个观察结果: 一切都在Android上完美运行。 如果我在任何其他iOS应用程序(日历,MS Teams等)中点击链接,它就可以正常工作。这使我

  • 我们有一个在线商店,在三个表中存储产品详细信息: 产品(名称、描述、品牌)-总计10,000个条目 产品-变体(大小、价格、可用性)-总计80.000项 产品-属性(颜色)-总计60.000项 这给出了大约400.000项的总组合。 示例: 产品为“Nike Air Max” 变体是“尺寸36,70美元”、“尺寸37,72美元”、“尺寸38,74美元” 属性为“Color Red”和“Color

  • 我是的新手。试图定位一个元素并单击它。 但不断低于错误: