Java 如何验证UI上的文本

Java 如何验证UI上的文本,java,selenium,selenium-firefoxdriver,Java,Selenium,Selenium Firefoxdriver,这里是UI的一部分,在这里我得到了一些文字文本,如 Opportunity Name Momentum Test (ID=AANA-19KVBE) Account Account Internal Owner Christopher Braden Sales Order Region North America Locale English United States Currency US Dollar

这里是UI的一部分,在这里我得到了一些文字文本,如

Opportunity Name    Momentum Test (ID=AANA-19KVBE)
Account             Account Internal
Owner               Christopher Braden
Sales Order Region  North America
Locale English      United States
Currency            US Dollar
上面的代码如下

<table class="datatable" width="100%">
    <tbody>
    <tr class="oddrow">
        <td>Opportunity Name</td>
        <td class="wrap_content">
            Momentum Test (ID=AANA-19KVBE)
            <br>
            <a target="_blank" href="http://www.example.com">View in Salesforce</a>
        </td>
    </tr>
    <tr class="evenrow">
        <td>Account</td>
        <td class="wrap_content">
            Akamai Internal
            <br>
            <a target="_blank" href="http://www.example.com">View in Salesforce</a>
        </td>
    </tr>
    <tr class="oddrow">
        <td>Owner</td>
        <td>Christopher Braden</td>
    </tr>
    <tr class="evenrow">
        <td>Sales Order Region</td>
        <td>North America</td>
    </tr>
    <tr class="oddrow">
        <td>Locale</td>
        <td>English - United States</td>
    </tr>
    <tr class="evenrow">
        <td>Currency</td>
        <td>US Dollar</td>
    </tr>
</tbody>
我需要单独检索这些值,将其存储在不同的页面中进行比较

例如:我需要知道美国存储在位置下

请帮帮我

谢谢和问候
Kiran

您可以在地图中读取并存储所有这些信息-

Map<String,String> map = new Map<String,String>;

List<WebElement> list = driver.findElements(By.xpath("//*[@class='datatable']/tbody/tr")); 

for(int i=1;i<=list.size();i++){

  String key = driver.findElement(By.xpath("//*[@class='datatable']/tbody/tr["+i+"]/td[1]")).getText();
  String value = driver.findElement(By.xpath("//*[@class='datatable']/tbody/tr["+i+"]/td[2]")).getText(); 

   map.put(key,value);
 }

通过这种方式,您可以读取表中的所有信息,并将其存储在地图中以供以后使用。让我知道这是否对您有效。

谢谢您的快速回复,朋友。我将尝试一下并让您知道:代码在类datatable中。driver.findElementsBy.xpath/html/body/table/tbody/tr;返回UI每个部分中的所有元素。如果我只想提取该类中的元素,我应该修改什么。元素Opportunity名称的xpath是./*[@id='mainside']/table/tbody/tr[1]/td[1]/div/div/div/div[2]/table/tbody/tr[1]/td[1]。。。List List=driver.findElementsBy.xpath/*[@class='datatable']/tbody/tr;返回null:我使用了我前面的评论中指定的整个xpath,并且我能够实现我想要的:。。感谢您的回复: