我尝试过使用isEnabled((,但因为它不是按钮,也没有禁用的属性,所以它总是返回true。
我已经通过检查粘贴了代码,请帮我一下,
上午9:29点击此查看代码
似乎您的类名更新为"被禁用";禁用时的文本。所以你可以试试下面的方法。
<<<<<<<<Imports>>>>>>>>
import com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords as WebUI
<<<<<<<<Code>>>>>>>>
//get class value of the element
attribute = WebUI.getAttribute(findTestObject('<<Element Locator>>'), 'class')
boolean isSubstringPresent(String subString, String fullString) {
return fullString.contains(subString)
}
//this will print true if the disabled text included in the class
println isSubstringPresent("disabled", attribute) // true
大多数情况下,您可以从上面的打印返回正确的布尔值。如果有效,请使用If条件并计划您的工作。
如果以上方法不起作用,我建议在浏览器中运行下面的Javascript并检查其输出。
document.getElementByClassName("sc-AxhUy irOhyl bigtix-session bigtix-session--available bigtix-session--disabled").disabled
如果它有效,您可以在自动化中执行相同的操作,但我不熟悉Katalon Studio,并发现以下代码对您有效。
<<<<<<<<Imports>>>>>>>>
import org.openqa.selenium.WebDriver as WebDriver
import org.openqa.selenium.JavascriptExecutor as JavascriptExecutor
import com.kms.katalon.core.webui.driver.DriverFactory as DriverFactory
<<<<<<<<Code>>>>>>>>
WebDriver driver = DriverFactory.getWebDriver()
JavascriptExecutor js = ((driver) as JavascriptExecutor)
String disabledState = js.executeScript(‘sc-AxhUy irOhyl bigtix-session bigtix-session--available bigtix-session--disabled").disabled’)
print(disabledState)
正如我在附件中看到的,有一个属性aria-disabled = true
,您可以随时对照该属性检查它是启用还是禁用。