Как перебрать таблицу с помощью селена? - PullRequest
2 голосов
/ 14 июня 2010

У меня есть таблица с именем UserManagement, которая содержит информацию о пользователе. Эта таблица обновляется при создании нового пользователя.Если я создаю двух пользователей, тогда мне нужно проверить, действительно ли два пользователя созданы или нет.Таблица содержит идентификатор, имя пользователя, имя, фамилию, Bdate..ctc.Здесь ID будет сгенерирован автоматически.
Я использую скрипт Selenium-TestNG. Используя Selenium, как я могу получить имя пользователя двух созданных мной пользователей?Должен ли я перебирать таблицу?Если да, то как перебрать таблицу?

Ответы [ 4 ]

2 голосов
/ 22 июня 2010

Используйте ISelenium.GetTable (string), чтобы получить содержимое нужных ячеек таблицы.Например, selenium.GetTable("UserManagement.0.1"); вернет содержимое первой строки и второго столбца таблицы.Затем вы можете утверждать, что в таблице указаны правильные имена пользователей или имена пользователей.

1 голос
/ 20 июня 2013

Получите количество строк, используя:

int noOfRowsInTable = selenium.getXpathCount("//table[@id='TableId']//tr");

Если имя пользователя, которое вы хотите получить, находится в фиксированной позиции, скажем, на 2-й позиции, то для каждой строки итерируйте, как указанониже:

selenium.getText("xpath=//table[@id='TableId']//tr//td[1]");

Примечание: мы можем найти количество столбцов в этой таблице, используя ту же процедуру

int noOfColumnsInTable = selenium.getXpathCount("//table[@id='TableId']//tr//td");

1 голос
/ 20 декабря 2010

Получить количество строк с помощью Selenium.getxpathcount (\ @ id = fjsfj \ td \ tr ") в переменной rowcount

Дать количество столбцов в переменной

Пример:

int colcount = 5;

Дайте требование, т.е. Новый пользователь

String user1 = "ABC"

for(i = 0;i <=rowcount;i++)
{
   for(j=0;j<=colcount;j++)
   {
      if (user1==selenium.gettable("//@[id=dldl/tbody" +i "td"+j))
      {
         system.out.println(user1  + "Inserted");
         break;
      }
      break;
   }
}
0 голосов
/ 07 февраля 2015

В общем, как-то так?

table = @browser.table(:id,'tableID')
table.rows.each do |row|
    # perform row operations here
    row.cells.each do |cell|
        # do cell operations here
   end
end
...