私はセレンとC#にかなり新しいですし、いくつかの助けを必要としています。私はいくつかのベースのセレンテストを作成するためにいくつかのオンラインチュートリアルを続けてきましたが、今は別のサイトにそれらを適用しようとしています。OpenQA.Selenium.ElementNotVisibleException:要素は見えないセレンのC#
私が持っている問題は、私が選択することはできませんラジオボタンがあるということです。私は多くの記事を見て、いくつかのことを試してみました
error: OpenQA.Selenium.ElementNotVisibleException
得るが、私はそれを動作させることはできません。これが私のコードが動作していないか、他の何かを試す必要があるかどうかはわかりません。
私が使用しているウェブサイトは次のとおりです。url
郵便番号、電子メールアドレスを入力し、燃料の種類を選択する必要がありますが、私は要素のいずれかを選択するために見つけることができない次のクリックした後。
私は待機を追加し、同上およびXPathで検索しようとし、IJavaScriptExecutor
を使用して試してみましたが、何も動作していないようにみえます。私もここでブラウザ
を最大化しようとしたことは私のコードです:
namespace TestAutomation
{
class SelectFuelObject
{
public SelectFuelObject()
{
PageFactory.InitElements(PropertiesCollection.driver, this);
}
[FindsBy(How = How.Id, Using = "dualFuel")]
public IWebElement btnFuelType { get; set; }
public void FuelType()
{
btnFuelType.ClickOnInvisibleElement();
}
}
}
Javascriptのクラス
namespace TestAutomation
{
public static class HiddenElements
{
public static void ClickOnInvisibleElement(this IWebElement element)
{
((IJavaScriptExecutor)PropertiesCollection.driver).ExecuteScript("arguments[0].hidden = false;", element);
element.Click();
}
}
}
をPropertiesCollectionクラス
class PropertiesCollection
{
//Auto-Implement Property
public static IWebDriver driver { get; set; }
}
}
これは私がちょうど試みた待ち時間であります割り当てられた時間後の時間外での結果
WebDriverWait wait = new WebDriverWait(PropertiesCollection.driver, TimeSpan.FromSeconds(30));
wait.Until(ExpectedConditions.ElementIsVisible(By.Id("DualFuel")));
誰も私を助けることができるしてください?
あなたはおそらく間違っ要素、ラジオボタンのように見える何かをクリックしようとしているが、隠されています。関連する 'html'をラジオボタンとあなたが試している' html'を囲むための[how to ask](http://stackoverflow.com/help/how-to-ask)ガイドに従って質問に直接投稿してくださいクリックする。 – mrfreester
セレンではxpathを使うことができるので、クロムでデベロッパーモードに入り、ラジオボタンをハイライト表示させるので、htmlとxmlを右クリックすると表示されます。 – EpicKip