Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在源页面上查找<;脚本>;线_Java_Selenium Webdriver - Fatal编程技术网

Java 在源页面上查找<;脚本>;线

Java 在源页面上查找<;脚本>;线,java,selenium-webdriver,Java,Selenium Webdriver,请有人帮我解决以下问题: 我必须测试页面的源代码是否包含以下行: <script>dataLayer.push({'login':'not logged in','site-language':'es','article-type':'2','section1':'error page','section2':'error page > access denied'});</script> 下一步是检查当前页面上是否存在上述行? 提前感谢您您尝试做的是基本的字符串

请有人帮我解决以下问题:

我必须测试页面的源代码是否包含以下行:

<script>dataLayer.push({'login':'not logged in','site-language':'es','article-type':'2','section1':'error page','section2':'error page > access denied'});</script>
下一步是检查当前页面上是否存在上述行?
提前感谢您

您尝试做的是基本的
字符串
操作

您可以在
String
上执行
matches()
contains()
方法等操作

例如:

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");

拉斯科夫斯基:谢谢,第二种方法很完美!
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");
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!");
}