3

私は Selenium C# フレームワークで遊んでいて、Facebook にログインしようとしましたが、うまくいきませんでした。

これは私がこれまでに得たものです (この投稿に基づく: Testing a Facebook Connect application using Selenium? )。私はそれを機能させることはできません。

ISelenium sel = new DefaultSelenium("localhost", 4444, "*chrome", "http://facebook.com");
public void LoginWithEmailAndPassword(string email, string pass)
{
    sel.Start();
    sel.Open("http://www.facebook.com");
    sel.ClickAt("//img[\\@alt='Facebook']", "User clicks on Facebook Login");
    sel.WaitForPopUp("", "3000");
    sel.SelectPopUp("");
    sel.Type("email", email);
    sel.Type("pass", pass);
    sel.KeyPress("pass", "\\13");
    sel.SelectWindow("null");
}

したがって、誰かがこれを行う方法のサンプルコードを提供してくれたり、正しい方向に導いてくれたりしてくれれば幸いです。

解決済み

Firefox Selenium プラグインの記録機能を使用して、動作させるために必要な ID と関数を取得しました。ログイン ボタンには XPath 定義が必要なようで、これも Selenium IDE から取得しました。

ISelenium sel = new DefaultSelenium("localhost", 4444, "*chrome", "http://facebook.com");
public void LoginWithEmailAndPassword(string email, string pass)
{
    sel.Start();
    sel.Open("/");
    sel.Type("id=email", email);
    sel.Type("id=pass", pass);
    sel.Click("//label[@id='loginbutton']/input");
}
4

1 に答える 1

1

WebDriver を使用してみてください:

IWebDriver driver = new FireFoxDriver();
driver.GoToUrl("www.facebook.com");

var element = driver.FindElement(By.Id("email"));
element.SendKeys(email);
...
element = driver.FindElement(By.Id("submit button id"));
element.Click();

このリンクは、開始するのに役立ちます。

于 2012-08-31T16:24:01.077 に答える