【发布时间】:2018-12-14 16:29:32
【问题描述】:
我使用 selenium 访问网页(角度)。如果我在 chrome 中手动缩小页面,则会出现菜单并且更易于导航。我想对 selenium 和 c# 做同样的事情。很多帖子都提出了类似的问题,但并不完全相同。让我解释一下:
-
css 缩放
((IJavaScriptExecutor)driver).ExecuteScript("document.body.style.zoom = '70%'");页面被缩小了但是angular网页没有检测到,隐藏的菜单没有显示出来,所以对我不好。
-
按键缩放:
new Actions(driver).SendKeys(Keys.Control).SendKeys(Keys.Subtract).Perform();它不会改变我的缩放级别。没有例外,它只是什么都不做。我尝试了其他 SendKeys 方法但没有成功。
-
使用 chrome 设置缩放
driver.Url = "chrome://settings"; ((IJavaScriptExecutor)driver).ExecuteScript("chrome.settingsPrivate.setDefaultZoom(0.66);");这会更改缩放级别,但在第一行之后会出现错误消息:“无法从内部尚未存在的加载辣椒模块”。 之后,webdriver 工作不正常。例如,单击以前可以工作的按钮的代码不再工作。
有什么新想法吗?
【问题讨论】:
-
什么触发了菜单切换?
-
回答:@KoshVery。如果网页没有缩小,则必须按下图标才能显示菜单。我可以做到,但缩小会更容易。在这种情况下,网页会自行“重新对齐”,并且菜单将可见。如果我使用 css-zoom 则网页会缩小但不显示菜单。
标签: css selenium-webdriver selenium-chromedriver