Я пытаюсь создать явное ожидание с помощью Selenium, ожидающего видимости сообщения «Эта страница не может быть отображено» в Internet Explorer, когда страница не может быть достигнуто. Селен, конечно, имеет проблему с апострофом в xpaths. Код я работаю состоит в следующем ...Ожидание IE «Эта страница не может быть отображена» Страница
String expectedText = "This page can't be displayed";
String waitforXpath = "//div[contains(.,'"+expectedText+"')]";
WebDriverWait wait = new WebDriverWait(driver,10);
wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath(waitforXpath)));
Но, конечно же, Селен бросает TimeoutException ожидания на видимость «Эта страница не может быть отображена» элемент. Любые предложения относительно того, как наилучшим образом обойти это?
EDIT: Вот источник для этой страницы ...
<!DOCTYPE HTML>
<html>
<head>
<link rel="stylesheet" type="text/css" href="NewErrorPageTemplate.css" >
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>This page can't be displayed</title>
<script src="errorPageStrings.js" language="javascript" type="text/javascript">
</script>
<script src="httpErrorPagesScripts.js" language="javascript" type="text/javascript">
</script>
</head>
<body onLoad="javascript:getInfo();">
<div id="contentContainer" class ="mainContent">
<div id="mainTitle" class="title">This page can't be displayed</div>
<div class="taskSection" id="taskSection">
<ul id="cantDisplayTasks" class="tasks">
<li id="task1-1">Make sure the web address <span id="webpage" class="webpageURL"></span>is correct.</li>
<li id="task1-2">Look for the page with your search engine.</li>
<li id="task1-3">Refresh the page in a few minutes.</li>
</ul>
<ul id="notConnectedTasks" class="tasks" style="display:none">
<li id="task2-1">Check that all network cables are plugged in.</li>
<li id="task2-2">Verify that airplane mode is turned off.</li>
<li id="task2-3">Make sure your wireless switch is turned on.</li>
<li id="task2-4">See if you can connect to mobile broadband.</li>
<li id="task2-5">Restart your router.</li>
</ul>
</div>
<div><button id="diagnose" class="diagnoseButton" onclick="javascript:diagnoseConnectionAndRefresh(); return false;">Fix connection problems</button></div>
</div>
</body>
</html>
Используйте другой XPath, CSS или что-нибудь еще ... все, что мы не можем вам помочь, не видя соответствующей части HTML. – SiKing
@SiKing См. Мое редактирование – user2150250
Пробовал ли вы использовать ID, 'By.Id (" mainTitle ")'? – Sham