簡體   English   中英

如何使用硒webdriver查找是否啟用了元素?

[英]How to find an element is enabled or not using selenium webdriver?

我使用了以下代碼,當前我的按鈕已禁用。因此代碼應返回“ false”值。 但是它顯示的是“ true”值。如何處理呢? 我使用過的元素屬性是“ ID”。 在此處輸入圖片說明

boolean val1 = fb.Element(ObjSWchat.chatunavailableicon).isEnabled();
                    System.out.println(val1);
                    if (val1=true) {
                        fb.ValidateTest(true, "Element is enabled");
                    } else {
                        fb.ValidateTest(true, "Element is disabled");
                        Assert.assertFalse(true);
                    }

HTML代碼:

<div id="enableChat" style="display: clock;">
                    <div id="EnableChat" class="xxxx_softwaredata iconchat">
                        <div id="myChatLinkContainer" class="rn_ConditionalChatLink">
                            <div id="myChatLink" class="">
                                <div id="myChatLinkInfo" class="">

                                <!-- -->
                                <span>Unavailable</span></div>
                            </div>
                        </div>

首先這里是錯誤:

if (val1=true) {

應該

if (val1==true) {

嘗試使用此等待:

WebDriverWait wait = new WebDriverWait(webDriver, timeoutInSeconds);
wait.until(ExpectedConditions.visibilityOfElementLocated(By.id<locator>));

要么

wait.until(ExpectedConditions.elementToBeClickable(By.id<locator>));

希望這會有所幫助,

您已經使用了賦值運算符(提到了Single =),因此它返回的是true。 請更改您的if條件,如下所示(指定==)

            if (val1==true) {
                    fb.ValidateTest(true, "Element is enabled");
                } else {
                    fb.ValidateTest(true, "Element is disabled");
                    Assert.assertFalse(true);
                }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM