New to Telerik Test Studio Dev EditionStart a free 30-day trial

Common HTML Control Actions

What are some of the things we can do after finding the element we want to act upon? We can:

  • Click on elements

  • Perform mouse actions on elements

  • Check/uncheck radio buttons and checkboxes

  • Invoke events such as OnClick, OnFocus

  • Capture an image snapshot

  • Make selections of a drop down

Here are some examples:

C#
    // All controls have a Click/MouseClick. The .Click invokes a click from the DOM,
    // the MouseClick(), moves the mouse to the control and clicks it.
    
    //
    // CLICKING
    //
    Find.ById<HtmlInputButton>("button1").Click();
    ActiveBrowser.Refresh();
    Find.ById<HtmlInputButton>("button1").MouseClick();
    
    // You can capture any element on the page using the .Capture()
    Find.ById<HtmlInputImage>("image1").Capture("myfile"); // Will be stored to the Log.LogLocation
    
    //
    // CHECKING
    //
    // Check a checkbox and invoke the onclick event.
    HtmlInputCheckBox ck = Find.ById<HtmlInputCheckBox>("checkbox1");
    ck.Check(true, true);
    
    // Query the checked state
    Assert.IsTrue(ck.Checked);
    // You can also simply set the value without invoking the clicked event.
    ck.Checked = false;
    Assert.IsFalse(ck.Checked);
    
    // Get whether a checkbox is enabled or disabled.
    HtmlInputCheckBox cks = Find.ById<HtmlInputCheckBox>("checkbox1");
    bool disabled = cks.GetValue<bool>("disabled");
    
    // Disable it
    cks.SetValue<bool>("disabled", true);
    Assert.IsTrue(cks.GetValue<bool>("disabled"));
    
    // Is it visible
    Assert.IsTrue(cks.IsVisible());
    
    // When the contents of a div element are larger than the declared
    // width or height of element it automatically adds scroll bars.
    // When that happens we can scroll the contents of the div element.
    // The value represents the offset in pixels to scroll the contents.
    HtmlDiv infoDiv = Find.ById<HtmlDiv>("AutoInfo");
    infoDiv.ScrollTop = 50;
    infoDiv.ScrollLeft = 75;
    
    // Get the color style
    HtmlSpan mySpan = Find.ById<HtmlSpan>("Warning");
    HtmlStyle styleColor = mySpan.GetStyle("color");
    string strColor = mySpan.GetStyleValue("color");
    
    // Getting the computed style will follow the CSS chain and return the
    // style.
    HtmlStyle styleMargin = mySpan.GetComputedStyle("margin");
    string strMargin = mySpan.GetComputedStyleValue("margin");
    
    //
    // SELECTING
    //
    HtmlSelect select = Find.ById<HtmlSelect>("select1");
    Assert.IsTrue(select.SelectedOption.Value.Equals("Option1Text"));
    Assert.IsTrue(select.SelectedOption.Text.Equals("Option1"));
    Assert.IsTrue(select.SelectedIndex.Equals(0));
    
    select.SelectByIndex(1);
    Assert.IsTrue(select.SelectedOption.Text.Equals("Option2"));
    
    //
    // MULTI-SELECTING
    //
    HtmlSelect multi_select = Find.ById<HtmlSelect>("select2");
    multi_select.MultiSelectByText("E3145", "R4325", "W4573", "L5623");
    multi_select.MultiSelectByValue("E3145", "R4325", "W4573", "L5623");
    
    HtmlOption opt0 = multi_select.Options[0];
    HtmlOption opt2 = multi_select.Options[2];
    HtmlOption opt4 = multi_select.Options[4];
    multi_select.MultiSelect(opt0, opt2, opt4);
    
    //
    // SET TEXT
    //
    Find.ById<HtmlTextArea>("textarea1").Text = "NEW TEXT";
    
    // Access common methods
    HtmlAnchor link = Find.ByAttributes<HtmlAnchor>("href=~google");
    Assert.IsTrue(link.Attributes.Count == 3);
    Assert.IsTrue(link.BaseElement.TextContent.Trim().Equals("Link"));
    
    // Invoke any events on the control
    link.InvokeEvent(ScriptEventType.OnFocus);
Not finding the help you need?
Contact Support