私は、さまざまな Web ページをクロールし、Selenium を使用していくつかのテストを行うプログラムを作成しています。ここで、これらの Web サイトでどの CSS フレームワークが使用されているかを調べて、統計を取得したいと考えています。現在、特定のフレームワークの名前を持つページにリンクされている .css ファイルがあるかどうか、FireFox Webdriver で確認します。
Iterator<WebElement> divWebElementIteratorCSS = webDriver.findElements(By.xpath("//link[@rel='stylesheet']")).iterator();
次に、見つかった .css ファイルの名前に、確認したい CSS フレームワークのいずれかの名前が含まれているかどうかを確認します。
if ( src.contains( frameWorkName ) && cssFrameWorks.get( frameWorkName ) == false ) {
result.addAttribute("Framework", "STRING", frameWorkName);
result.setPercent( 100 );
result.setSuccessful( true );
cssFrameWorks.put( frameWorkName, true );
}
Hashmap frameWorkName には、関心のあるすべてのフレームワークの名前が含まれています。
今私の問題: サイトの管理者がフレームワークの .css ファイルの名前を変更した場合、私のテストは機能しません! .css の名前が異なる場合でも機能する、これを確認する安全な方法はありますか?