WatiN:尝试将TypeText(“WatiN”)添加到Google的搜索文本框时出错

时间:2011-12-08 17:15:26

标签: c# watin

我刚刚开始研究WatiN并且正在关注http://www.codeproject.com/KB/aspnet/WatiN.aspx的示例。不幸的是,我遇到了一个问题,即它声称名称为“q”的文本字段不存在。

这是我的代码:

    [STAThread]
    static void Main(string[] args)
    {
        IE ie = new IE();
        ie.GoTo("http://www.google.com");
        TextField ietxt = ie.TextField(Find.ByName("q"));
        ietxt.TypeText("WatiN");
        ie.Button(Find.ByValue("Google Search")).Click();

    }

当它到达行ietxt.TypeText(“WatiN”)时,它会抛出错误: “找不到INPUT(隐藏)或INPUT(密码)或INPUT(文本)或INPUT(textarea)或TEXTAREA元素标记匹配条件:google.com/上的属性'name'等于'q'(内部异常:Element wasn'在30秒内可用。)“

似乎每个人都使用这个例子,它适用于他们。此外,我进入了google.com的源代码,并确切地找到了“q”确实是搜索文本字段名称的位置。

<input name="q" title="Search" class="gsfi" id="lst-ib" ....>

有谁知道为什么我会收到此错误?

1 个答案:

答案 0 :(得分:1)

我找到了解决方法!从进一步的测试中我得出的结论是,问题似乎来自我的机器上如何配置IE 8。我在其他机器上使用xp和IE8进行了测试,一切正常。卸载并重新安装IE8已经解决了这个问题。

我仍然不确定我过去的IE8版本的配置有何不同,所以如果有人对可能导致这种情况的任何想法有所了解,我会很高兴听到。

谢谢!