0
我正在使用fluentlenium對我的應用程序進行測試,但發生了一些錯誤。我正在使用Play Framework和Slickgrid創建我的網格。 Slickgrid在javascript中動態創建網格。 所創建的結構似乎是這樣的:使用fluentlenium與動態生成內容的問題
<div id=」grid」>
<div class=」header」>
<div class=」slickgrid-column-header column-1」>Column 1 </div>
<div class=」slickgrid-column-header column-2」>Column 2 </div>
<div class=」slickgrid-column-header column-2」>Column 2 </div>
</div>
<div class=」viewport」>
<div class=」canvas」>
<div class=」slick-row row-1」>
<div class=」slick-cell l0 r0> Column 1 Row 1</div>
<div class=」slick-cell l1 r1> Column 2 Row 1</div>
<div class=」slick-cell l2 r2> Column 3 Row 1</div>
</div>
<div class=」slick-row row-2」>
<div class=」slick-cell l0 r0> Column 1 Row 2</div>
<div class=」slick-cell l1 r1> Column 2 Row 2</div>
<div class=」slick-cell l2 r2> Column 3 Row 2</div>
</div>
</div>
</div>
</div>
通常情況下,當你看到你的源代碼fluentlenium,你可以看到所有的源代碼,但在我的情況下,一些slickgrid代碼行丟失。而這個缺失的線是我需要的線。 此代碼創建一個獲取頁面源的簡單測試。
@Test
public final void fakeTest() {
final int port = 3333;
running(testServer(port, fakeApplication()), HTMLUNIT,
new Callback<TestBrowser>() {
@Override
public void invoke(final TestBrowser browser) throws Throwable {
browser.goTo("http://localhost:3333/fake");
System.out.println(browser.pageSource());
}
});
}
輸出似乎是這樣的:
<html>
<head> <title> </title> </head>
<body>
<div id=」grid>
<div class=」header」>
<div class=」slickgrid-column-header column-1」>Column 1 </div>
<div class=」slickgrid-column-header column-2」>Column 2 </div>
<div class=」slickgrid-column-header column-2」>Column 2 </div>
</div>
<div class=」viewport」>
<div class=」canvas」></div>
</div>
</div>
</body>
</html>
怎麼可以看到,這些細胞沒有出現,我不能讓細胞FluentWebElement模擬點擊或獲取單元格的值。