New to Telerik Test Studio? Download free 30-day trial

HTML Table Sum and Average

I would like to get the sum and the average of the values in a certain column of an HTML table.

Solution

This is possible with a coded solution. The example below is against this W3Schools site.

HtmlTable table = Find.ByTagIndex<HtmlTable>("table", 0);

double r = table.Rows.Count;
double sum = 0;

for (int i = 0; i < r; i++)
{
    HtmlTableRow row = table.Rows[i];
    HtmlTableCell cell = row.Cells[1];

    string num = cell.TextContent.Substring(0, 2);
    int j = i + 1;
    Log.WriteLine("Row" + j.ToString() + ": " + num);

    double percent = Convert.ToDouble(num);
    sum  = sum + percent;
}

Log.WriteLine("Sum: " + sum.ToString());
double average = sum / r;
Log.WriteLine("Average: " + average.ToString());
Assert.IsTrue(sum == 90);
Dim table As HtmlTable = Find.ByTagIndex(Of HtmlTable)("table", 0)

Dim r As Double = table.Rows.Count
Dim sum As Double = 0

For i As Integer = 0 To r - 1
    Dim row As HtmlTableRow = table.Rows(i)
    Dim cell As HtmlTableCell = row.Cells(1)

    Dim num As String = cell.TextContent.Substring(0, 2)
    Dim j As Integer = i + 1
    Log.WriteLine("Row" + j.ToString() + ": " + num)

    Dim percent As Double = Convert.ToDouble(num)
    sum = sum + percent
Next

Log.WriteLine("Sum: " + sum.ToString())
Dim average As Double = sum / r
Log.WriteLine("Average: " + average.ToString())
Assert.IsTrue(sum = 90)
In this article