如何使用c#

我正在尝试使用硒验证开关是“打开还是关闭”,但我似乎无法正确实现。切换是在加载网页时设置为开启位置,但在关闭状态时过滤器会在表格中显示结果。它工作正常,我只需要检查硒测试以获取其当前状态即可。

  1. element.Selected;始终返回false(与切换位置有关)
  2. element.Enabled;始终返回true(与切换位置有关)
  3. 字符串测试= myToggle.Getattribute(“ class”);返回无效的文本“ slider round”
  4. 字符串test1 = myToggle.Getattribute(“ checked”);为空
  5. 字符串test2 = myToggle.Getattribute(“ value”);为空

这是代码:

<label class="switch">
<input type="checkbox" id="myToggle" checked />
<span class="slider round"></span>
</label>

用于检查切换位置并加载表格数据的代码:

   if (Amt == currentAmt ) {
    if ($("#myToggle").prop("checked") == true) {
        loadMyProducts('NAN',$("#total").val());
    }

此刻我的测试如下

    [FindsBy(How = How.XPath,Using = "//*[@id='divTestacc']/div[1]/p[9]/label/span")]
  public IWebElement myToggle { get; set; }

    public Boolean CheckMyToogleIsOnorOFF()
    {
        string test = myToggle.Getattribute("class");
        Console.Write("checking "+ test);

        // string test1 = myToggle.Getattribute("checked");
        //string test2 = myToggle.GetProperty("checked");
        // .Selected always returns false
        // .Enables always returns true 

        Boolean result;
        result = myToggle.Enabled;
        bool result1 = myToggle.Selected;

        if (result == true)
        {
            Console.WriteLine("My toggle is enabled");
        }
        else
        {
            Console.WriteLine("My toggle is not enabled");
        }
        return result;
    }
macproboy 回答:如何使用c#

// is it checked? 
var isChecked = driver.FindElement(By.XPath("//input[@type='checkbox']").Selected;

使用.Selected属性应该可以达到您的目的。我添加driver.FindElement语句的原因是为了确保您找到正确的元素-根据问题描述,我不确定所定位和测试的元素是否正确。

正如另一个用户指出的那样,如果GetAttribute("class")返回slider round,则说明您在这里查找错误的元素。确保首先找到input元素。

您的文件标头//*[@id='divTestAcc']/div[1]/p[9]/label/span上的XPath将定位span元素,而不是inputinput是带有checked的元素,因此我们需要测试的东西。

本文链接:https://www.f2er.com/3109428.html

大家都在问