Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.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
Java 哪个类实现接口操作方法Perform()_Java_Selenium_Selenium Webdriver_Interface_Webdriver - Fatal编程技术网

Java 哪个类实现接口操作方法Perform()

Java 哪个类实现接口操作方法Perform(),java,selenium,selenium-webdriver,interface,webdriver,Java,Selenium,Selenium Webdriver,Interface,Webdriver,我是selenium的新手,我试图理解接口操作和类操作。我的理解是接口操作只有一个方法Perform()。 但是,我看到类操作还有Perform()方法。因为类操作不是从接口操作实现的,所以它的方法是Perform 不是接口的重写方法。我的问题是,如果类操作没有实现接口操作,那么哪个类实现了perform方法呢? 我说类操作不实现接口操作是错的吗?我没有看到任何文件说它有 org.openqa.selenium.interactions Interface Action 简而言之,org.op

我是selenium的新手,我试图理解接口操作和类操作。我的理解是接口操作只有一个方法Perform()。 但是,我看到类操作还有Perform()方法。因为类操作不是从接口操作实现的,所以它的方法是Perform 不是接口的重写方法。我的问题是,如果类操作没有实现接口操作,那么哪个类实现了perform方法呢? 我说类操作不实现接口操作是错的吗?我没有看到任何文件说它有

org.openqa.selenium.interactions
Interface Action

简而言之,
org.openqa.selenium.interactions
包包含以下接口

  • :表示单个用户交互操作的界面
  • Encodable
    :此接口允许对W3C wire格式的自定义交互进行JSON编码
  • haInputDevices
    :由每个驱动程序实现的接口,允许访问原始输入设备
  • HasTouchScreen
    :由每个驱动程序实现的界面,允许访问触摸屏功能
  • InputSource
    :根据W3C WebDriver规范定义和使用的输入源建模
  • Interactive
    :表示类可以与W3C WebDriver操作命令一起使用
  • IsInteraction
    :帮助我们将代码过渡到新世界的界面
  • 键盘
    :表示基本低级键盘操作的界面
  • Locatable
  • 鼠标
    :表示基本鼠标操作的界面
  • 触摸屏
    :表示基本触摸屏操作的界面
它还包含以下类:

  • :用于模拟复杂用户手势的面向用户的API
  • 按钮释放反应
    :已弃用
  • 单击操作
    :已弃用
  • 单击并保持操作
    :已弃用
  • 合成动作
    :用于聚合动作并同时触发所有动作的动作
  • ContextClickAction
    :已弃用
  • 双击操作
    :已弃用
  • 交互
    :用作序列的基础
  • KeyDownAction
    :型号a
  • keyinport
    :已弃用
  • MoveMouseAction
    :已弃用
  • MoveToOffsetAction
    :已弃用
  • 暂停
    :指示给定的进程应暂停给定的持续时间
  • PauseAction
    :已弃用
  • 指针输入
    :型号a
  • PointerInput.Origin
  • SendKeysAction
    :已弃用
  • 序列
    :给定InputSource的操作对象序列,用于

perform()

public void perform()

是一种方便的方法,用于执行操作而无需先调用
build()

actions
是一个实用程序类。它实际上没有实现
操作
接口。它是使用
Builder
设计模式设计的,因此您可以调用方法链,每个方法都会增加原始对象的状态

有几个类实现
操作
接口。您可以使用任何IDE来跟踪它们是什么(
DoubleClickAction
KeyUpAction
,等等)

如果您观察这些
操作
实现,您还将看到它们目前已被弃用。这是因为有了
交互
的新概念。该实用工具
操作
类同时支持这两种操作。每次使用“Actions”类将新的“action”添加到action链时,它都会将相应的
action
实现添加到动作的内部存储中,并将
交互的相应实现添加到交互序列中

然后,当您执行
build()
时,它会选择在这种特定情况下使用哪个

public void perform()