2017-08-29 63 views
0

我想写一些Android应用程序,其中webviewhref标记中的一些内容的一些仪器测试。在WebView Expresso测试与href

以下是webview的片段。

<table width="90%" class="welcome"> 
    <tr> 
     <td><a href="/demo/TransactionFree"><img 
       src="/demo/pen.png" width="80" /><br /></a><b> Text <br></td> 

     <td><a href="/demo/Transaction"><img 
       src="/portaldemo/pen.png" width="80" /><br /></a>Text Twor</b><br> <br></td> 

</table> 

我想单击第一项。所以我在Expresso中写了下面的测试。

onWebView().withElement(findElement(Locator.CSS_SELECTOR, "a[href='*TransactionFree']")).perform(DriverAtoms.webClick()); 

它正在使用Android的新手机,但在诸如三星S3等低端手机上失败。它未能找到元素。

我该如何解决?

回答

0

终于明白了如何去做。在Chrome浏览器中打开HTML页面 - >右键点击特定的元素被点击上 - >检查元素 - >复制XPath

会得到这样的事情/html/body/div/div/div[2]/div/table[1]/tbody/tr/td[1]/a/img

只要改变expresso命令 onWebView().withElement(findElement(Locator.XPATH, "/html/body/div/div/div[2]/div/table[1]/tbody/tr/td[1]/a/img")).perform(webClick());

它应该点击该特定元素。