元素不可见 - c#

我正在尝试使用Chrome WebDriver登录网站。唯一的问题是,放置用户名的文本框似乎不可见。当我运行代码时,如果我手动单击用户名所在的框,则程序将不会出现问题。如何使该元素可见,以便可以单击它?

当代码到达username.Click();时,我得到“元素不可见”。

static void Main(string[] args)
    {
        var driver = new ChromeDriver();
        var wait = new WebDriverWait(driver, TimeSpan.FromSeconds(30));
        driver.Navigate().GoToUrl("http://contoso.com/");
        var loginPopUp = wait.Until(d => driver.FindElement(By.XPath("//*[@id='user-menu']/li[2]/a")));
        loginPopUp.Click();
        var username = wait.Until(d => driver.FindElement(By.XPath("//*[@id='login']")));
        const string script = "document.getElementById('login').style.visibility='visible';";
        driver.ExecuteScript(script);
        username.Click();
        username.Clear();
        username.SendKeys("[email protected]");
        var password = wait.Until(d => driver.FindElement(By.XPath("//*[@id='password']")));
        password.SendKeys("thepassword");
        var login = wait.Until(d => driver.FindElement(By.XPath("//*[@id='popup-body']/div/div[3]/div[5]/a")));
        login.Click();
    }

参考方案

用户名框不可见。出现在页面上需要时间吗?

您可以使用它使元素可见。

对于google.com徽标:
隐藏Google徽标

document.getElementById('hplogo').style.display='none'

使Google徽标可见

document.getElementById('hplogo').style.display='block'

捕获测试中的屏幕截图以调试问题。

如何在没有for循环的情况下在Javascript中使用Django模板标签 - javascript

我想在JavaScript中使用模板变量:我的问题是在javascript代码中使用for循环,for循环之间的所有事情都会重复..但我不想要....下面粘贴了我的代码..有人可以告诉我更好的方法吗这..因为这看起来很丑..这是我的代码: {% block extra_javascript %} <script src="/static/js…

在xpath中选择多个条件 - php

我正在尝试使用来自高尔夫比赛的xml提要,以显示每个高尔夫球手在高尔夫球场上的位置。目前,我想展示符合两个条件的所有高尔夫球手(排在前25名,以及所有加拿大高尔夫球手)。这是xml提要的示例。<GolfDataFeed Type="Leaderboards" Timestamp="3/21/2012 9:18:09 PM&…

Mongo抛出“元素名称'名称'无效”异常 - c#

我正在更新一个简单的字段。var filterDocument = new BsonDocument { { "name", "alice" } }; var newDocument = new BsonDocument { { "name", "Alice" } }; coll…

T-SQL等价的正则表达式'\ b' - c#

我正在将利用regex的CLR函数转换为SQL函数。我知道SQL Server并不完全支持正则表达式,但是我只需要一种情况就可以搜索单词。搜索字段值:{"Id":1234, "Title": "The quick brown"}.NET中的正则表达式模式:'\b' + '…

将字符串分配给numpy.zeros数组[重复] - python

This question already has answers here: Weird behaviour initializing a numpy array of string data                                                                    (4个答案)         …