Atata - 如何将键发送到页面

Atata - How to send keys to a page

我是 Atata 的新手,正在尝试向页面发送一个 TAB 键并验证突出显示的内容(比如在 Google 页面上)。我知道我们可以像下面那样使用 Press 说一个页面,但无法想出一种方法来发送特殊键,如 TAB 、 CTRL、 ENTER 和 all

Go.To<ContactPage>().Press("abc");

您应该使用 OpenQA.Selenium 命名空间中的 Keys class,其中包含所有必要的键,如下所示:

Go.To<ContactPage>().Press(Keys.Tab);
// Or
Go.To<ContactPage>().Press("abc" + Keys.Tab);

还有独特的 Atata 触发器功能。有 [PressEnter][PressTab][PressEscape][PressKeys("abc")] 属性。 trigger 属性设置值后会自动按下指定的键来控制。例如:

public class SearchPage : Page<_>
{
    [FindById("search-query")]
    [PressEnter] // Adds trigger.
    public TextInput<_> Query { get; private set; }
}

然后测试:

Go.To<SearchPage>().
    Query.Set("abc"); // Enter will be pressed after "abc" text is set.