だから私は滑らかなグリッドを使用するウェブサイトを持っています. 基本的に、ブラウザ ウィンドウが最大化されている場合でも、水平スクロールバーが表示されます (これはユーザーの設計によるものです)。現在、Web自動化テスト(セレンを使用)では、列の総数は正しいですが、右のセレンにスクロールしないと、表示されている列ヘッダーのみが表示され、表示されていない他の列は空白または空の文字列を返します。皆さんへの私の質問は、同様の問題があり、この問題をどのように回避したかです。これはこれまでの私のコードです。ただし、滑らかなグリッドがスクロールせずに新しいコンテンツをロードしていない場合、空白が返されます。すべての列ヘッダーを取得するには、どうにかして右にスクロールできる必要があります。
int GetColumnIndexByName(string columnName)
{
VerifyComponentLoaded();
var colHeaders = Driver.FindElements(By.XPath("somepath"));
for (int i = 0; i < colHeaders.Count; i++)
{
if (colHeaders.ElementAt(i).Text == columnName)
return i;
}
Assert.Fail("The columnName {0} was not found.", columnName);
}