В настоящее время у меня возникли некоторые проблемы с использованием ключевого слова Drag and Drop в katalon, так как объект, который мне нужно перетащить, должен быть нажат (примерно на 1 секунду), прежде чем он выскочит и станет подвижным, но так как «перетаскивание»«Ключевое слово работает мгновенно, без тайм-аута на первое действие (перетаскивание).Кто-нибудь пытался использовать пользовательское ключевое слово для такого рода проблем?
Заранее большое спасибо.
В настоящее время это единственный код, который я пытаюсь преобразовать в мобильном устройстве, поскольку он былПервоначально создан для Интернета, я не уверен, правильно ли я это делаю.
package aCustomDragmDrop
import static com.kms.katalon.core.checkpoint.CheckpointFactory.findCheckpoint
import static com.kms.katalon.core.testcase.TestCaseFactory.findTestCase
import static com.kms.katalon.core.testdata.TestDataFactory.findTestData
import static com.kms.katalon.core.testobject.ObjectRepository.findTestObject
import com.kms.katalon.core.annotation.Keyword
import com.kms.katalon.core.checkpoint.Checkpoint
import com.kms.katalon.core.checkpoint.CheckpointFactory
import com.kms.katalon.core.mobile.keyword.MobileBuiltInKeywords
import com.kms.katalon.core.model.FailureHandling
import com.kms.katalon.core.testcase.TestCase
import com.kms.katalon.core.testcase.TestCaseFactory
import com.kms.katalon.core.testdata.TestData
import com.kms.katalon.core.testdata.TestDataFactory
import com.kms.katalon.core.testobject.ObjectRepository
import com.kms.katalon.core.testobject.TestObject
import com.kms.katalon.core.webservice.keyword.WSBuiltInKeywords
import com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords
import internal.GlobalVariable
import MobileBuiltInKeywords as Mobile
import WSBuiltInKeywords as WS
import WebUiBuiltInKeywords as WebUI
import org.openqa.selenium.WebElement
import org.openqa.selenium.WebDriver
import org.openqa.selenium.By
import com.kms.katalon.core.mobile.keyword.internal.MobileDriverFactory
import com.kms.katalon.core.webui.driver.DriverFactory
import com.kms.katalon.core.testobject.RequestObject
import com.kms.katalon.core.testobject.ResponseObject
import com.kms.katalon.core.testobject.ConditionType
import com.kms.katalon.core.testobject.TestObjectProperty
import com.kms.katalon.core.mobile.helper.MobileElementCommonHelper
import com.kms.katalon.core.util.KeywordUtil
import com.kms.katalon.core.webui.exception.WebElementNotFoundException
import io.appium.java_client.AppiumDriver
import io.appium.java_client.MobileElement
import io.appium.java_client.TouchAction
public class DragDrop {
@Keyword
def dragdrop(TestObject to,TestObject destination,Integer intX,Integer intY) {
def Eleto = MobileElementCommonHelper.findElement(to, timout)
def eledest = MobileElementCommonHelper.findElement(destination, timeout)
TouchAction touchAction = new TouchAction(driver)
touchAction.moveToElement(eleto)
touchAction.waitAction(WaitOptions.waitOptions(Duration.ofMillis(2000)))
touchAction.perform()
touchAction.moveToElement(eledest,intX, intY)
touchAction.release()
touchAction.perform();
}
}