我在 Selenium WebDriver、C#、Chrome 浏览器中编写了以下微测试(它没有用,但这里不是这种情况):
[Test]
public void T2_API_001_PrintingAlerts()
{
pgactions.OpenDataset(driver, settings.dataset); // opening page
for (int i = 0; i < 10; i++)
{
((IJavaScriptExecutor)driver).ExecuteScript("TsTable.Admin.log('this is error message', true);");
}
var logs = driver.Manage().Logs.GetLog(LogType.Browser);
foreach (var log in logs)
{
Console.WriteLine(log.ToString());
}
Thread.Sleep(100000);
}
在 VS 的调试控制台中,我希望看到(就像我在 WebDriver 启动的 Chrome 浏览器实例中看到的那样):
[14:02:22.816] Settings valid!
randomTable.js:6711 [14:02:22.976] Constructing table...
randomTable.js:6711 [14:02:22.976] Validating 32 rows data set...
( some more irrelevant rows )
randomTable.js:6711 [14:02:23.375] ...DONE (0.399 sec)
randomTable.js:6711 [14:02:24.949] this is error message
randomTable.js:6711 [14:02:25.060] this is error message
randomTable.js:6711 [14:02:25.174] this is error message
randomTable.js:6711 [14:02:25.344] this is error message
randomTable.js:6711 [14:02:25.477] this is error message
randomTable.js:6711 [14:02:25.612] this is error message
randomTable.js:6711 [14:02:25.715] this is error message
randomTable.js:6711 [14:02:25.809] this is error message
randomTable.js:6711 [14:02:25.993] this is error message
randomTable.js:6711 [14:02:26.089] this is error message
但我得到的是:
------ Run test started ------
NUnit VS Adapter 2.0.0.0 executing tests is started
Loading tests from C:\automated_testing\testTable\TableSelenium.dll
Run started: C:\automated_testing\testTable\TableSelenium.dll
Starting test...
[2016-05-04T12:02:16Z] [All] http://tstable.testsite.com/favicon.ico 0:0 Failed to load resource: the server responded with a status of 404 (Not Found)
(最后一行很重要,但说实话 - 我什至无法在浏览器中看到该行(?))
问题出在这一行吗?var logs = driver.Manage().Logs.GetLog(LogType.Browser);
?
我知道:https://github.com/seleniumhq/selenium-google-code-issue-archive/issues/6832 https://github.com/seleniumhq/selenium-google-code-issue-archive/issues/6832
但也看到了一些以不同方式收集错误日志的“黑客”。主要情况是 - 我不需要错误,但需要所有日志。
有任何想法吗?