我想了解Selenium如何评估该页面。
我有一组测试来检查页面上的元素。用Nunit,Selenium和PhantomJS作为驱动程序编写。
Page.Visit();
Page.FindElement(By.Id(" testid")。Text.Should()。NotBeNull(); // PASS Page.FindElement(By.Id(" testid")。Text.Should()。NotBeEmpty(); //不通过
如果浏览器大小设置得非常小,则测试不会通过:
driver.Manage().Window.Size = new Size(10,10);
基于此测试,PhantomJS评估页面的方式令人困惑。我一直以为它会检查DOM,但看起来像是根据可见性评估的元素TEXT!
答案 0 :(得分:1)
虽然这在我第一次发现它时也让我感到惊讶,但Selenium只会在浏览器的视口中找到可见的元素。因此,您需要确保在测试开始时浏览器视口足够大以容纳应用程序的内容。
通常,这可以通过最大化浏览器窗口来完成。如果您使用的是Windows,则可以通过Selenium触发F11
密钥。