2017-11-30 7 views
0

は誰かが、次の解決で私を支援してもらえ:<script>ライン

<script>dataLayer.push({'login':'not logged in','site-language':'es','article-type':'2','section1':'error page','section2':'error page > access denied'});</script> 

は実際に私がアクセスを探しています拒否されました:私はテストを持っている

をしてページのソースコードは、次の行が含まれていますそのページ上に存在して動けなくなる場合は、ページのソース

driver.navigate().to(BaseTest.config("url") + "/es/pronosticos"); 
    String link = driver.getPageSource(); 
見つけたとき
または エラーページ>はアクセスがを否定しました

上記の行が現在のページに存在するかどうかを確認するには次のステップが必要ですか? ありがとうございました

答えて

1

あなたがしようとしているのは基本Stringの操作です。

matches()またはのような操作をStringに実行できます。

例:

driver.navigate().to(BaseTest.config("url") + "/es/pronosticos"); 
String link = driver.getPageSource(); 
String script = "<script>dataLayer.push({'login':'not logged in','site-language':'es','article-type':'2','section1':'error page','section2':'error page > access denied'});</script>"; 

if (link.contains(script)) System.out.println("Site contains script"); 
else System.out.println("Site does NOT contain script"); 

他のアプローチは、<scriptを見つけようとするだろう>WebDriver

try { 
    WebElement script = driver.findElement(By.tagName("script")); 
    String scriptText = script.getText(); //returns the text of <script> tag 
    if (scriptText.contains("access denied")) System.out.println("Access Denied!"); 
    else System.out.println("Access granted"); 
} catch (NoSuchElementException e) { 
    System.out.println("Script does NOT exist!"); 
} 
+1

ラスコウスキーを経由して要素のおかげで、第二のアプローチは完璧です! – Zoran