Próbowałem jednego po drugim takiego surowego

String element= driver.findElement(By.xpath("//*[@id='historyRow']/tbody/tr[1]/td[1]")).getText();

            Assert.assertEquals(element, auto);

Oto kod HTML:

Chcę sprawdzić, czy Dodaj drugą wartość w tabeli i sprawdź, czy wszystkie szczegóły są wyświetlane dla każdej wartości z poprzednią wartością dodaną jako pierwszą. Jak sprawdzić dla wszystkich surowych Czy istnieje inny sposób, a nie jeden po drugim

<table id="historyRow">
<thead>
<tr style="cursor: pointer;">
<th class="portlet-section-header descending">
<a href="https://www.uat-office.com/customer/portal/_ns:YWNtLVZpZXdQb2xpdGljYWxEb25hdGlvbi0xX19jbS1WaWV3UG9saXRpY2FsRG9uYXRpb24tMnxjMHxkMXxlZC0yNTA3NTgwLXM9MT0wfGVkLTI1MDc1ODAtcD0xPTF8ZWFjdGlvbj0xPXZpZXdIaXN0b3J5fGVkLTI1MDc1ODAtbz0xPTJ8ZWlkPTE9NGZkMjQyZjY2ZTgyYWY5NTAxNmU4NDE0ZDcyMjE2NmM_/Management/ViewPoliticalDonation.psml" style="text-decoration: none;">Date and Time</a></th>
<th class="portlet-section-header">
<a href="https://www.uat-office.com/customer/portal/_ns:YWNtLVZpZXdQb2xpdGljYWxEb25hdGlvbi0xX19jbS1WaWV3UG9saXRpY2FsRG9uYXRpb24tMnxjMHxkMXxlZC0yNTA3NTgwLXM9MT0xfGVkLTI1MDc1ODAtcD0xPTF8ZWFjdGlvbj0xPXZpZXdIaXN0b3J5fGVkLTI1MDc1ODAtbz0xPTJ8ZWlkPTE9NGZkMjQyZjY2ZTgyYWY5NTAxNmU4NDE0ZDcyMjE2NmM_/Management/ViewPoliticalDonation.psml">User</a></th>
<th class="portlet-section-header">
<a href="https://www.office.com/customer/portal/_ns:YWNtLVZpZXdQb2xpdGljYWxEb25hdGlvbi0xX19jbS1WaWV3UG9saXRpY2FsRG9uYXRpb24tMnxjMHxkMXxlZC0yNTA3NTgwLXM9MT0yfGVkLTI1MDc1ODAtcD0xPTF8ZWFjdGlvbj0xPXZpZXdIaXN0b3J5fGVkLTI1MDc1ODAtbz0xPTJ8ZWlkPTE9NGZkMjQyZjY2ZTgyYWY5NTAxNmU4NDE0ZDcyMjE2NmM_/Management/ViewPoliticalDonation.psml">Action</a></th>
<th class="portlet-section-header">
<a href="https://www.uat-office.com/customer/portal/_ns:YWNtLVZpZXdQb2xpdGljYWxEb25hdGlvbi0xX19jbS1WaWV3UG9saXRpY2FsRG9uYXRpb24tMnxjMHxkMXxlZC0yNTA3NTgwLXM9MT0zfGVkLTI1MDc1ODAtcD0xPTF8ZWFjdGlvbj0xPXZpZXdIaXN0b3J5fGVkLTI1MDc1ODAtbz0xPTJ8ZWlkPTE9NGZkMjQyZjY2ZTgyYWY5NTAxNmU4NDE0ZDcyMjE2NmM_/eManagement/ViewPoliticalDonation.psml">Description / Comment</a></th></tr></thead>
<tbody>
<tr class="portlet-section-body" style="cursor: pointer;">
<td>
            Nov 19, 2019 09:34:10 AM EST
            </td>
<td>
                <!-- This hack is needed just for requests which had this audit comment inserted by their rule execution -->
                <!-- New requests won't have this comment anymore -->


                abc,auto

        </td>
<td>

                Edit

        </td>
<td>





                        <table style="width: auto;">


                        <tbody><tr style="cursor: pointer;"><td align="left" style="border-spacing:1px; padding-top:0px; padding-right:3px; padding-bottom:0px; padding-left:0px;">
                        <table style="border-spacing:1px; padding-top:0px; padding-right:3px; padding-bottom:0px; padding-left:0px; width: auto;">
                            <tbody><tr style="cursor: pointer;">
                                <td align="left" style="border-spacing:1px; padding-top:0px; padding-right:3px; padding-bottom:0px; padding-left:0px; vertical-align:text-top; text-align:left;">
                                    <b>Comment</b>
                                </td>
                                <td style="border-spacing:1px; padding-top:0px; padding-right:3px; padding-bottom:0px; padding-left:0px;">
                                    Add Comment.  comment  
                                </td>
                            </tr>
                        </tbody></table>
0
sapana 20 listopad 2019, 10:41
Opublikować odpowiedni kod HTML?
 – 
KunduK
20 listopad 2019, 11:53
Tekst, za którym się znajdujesz, znajduje się w pierwszym wierszu i drugiej kolumnie.Nie w pierwszej kolumnie. Spróbuj tego. String element= driver.findElement(By.xpath("//*[@id='historyRow']/tbody/tr[1]/td[2]")).getText().trim();
 – 
KunduK
20 listopad 2019, 13:47

1 odpowiedź

Wypróbuj poniższy kod: Sprawdź zamknięcie nawiasów klamrowych.

        // Grab the table 
        WebElement table = driver.findElement(By.id("View"));
        //get the size of the list of the rows
        List<WebElement> totalRows = table.findElements(By.tagName("tr"));
        int rows_count = totalRows.size();
        //Loop will execute till the last row of table.
            for (int row=0; row<rows_count; row++){
        //To locate columns(cells) of that specific row.
                List<WebElement> Columns_row = rows_table.get(row).findElements(By.tagName("td"));
        //To calculate no of columns(cells) In that specific row.
                int columns_count = Columns_row.size();
                System.out.println("Number of cells In Row "+row+" are "+columns_count);

        //Loop will execute till the last cell of that specific row.
                for (int column=0; column<columns_count; column++){
        //To retrieve text from that specific cell.
                    String celtext = Columns_row.get(column).getText();
                    System.out.println("Cell Value Of row number "+row+" and column number "+column+" Is "+celtext); 
        }
    });
0
Rupali 20 listopad 2019, 13:45