如何在量角器中测试列值?

时间:2016-12-15 06:54:07

标签: selenium-webdriver automation protractor

<table class="table table-bordered table-striped">

        <thead>
        <tr>
        <td>
        <a href="#" ng-click="sortType = 'date'; sortReverse = !sortReverse">
        Date-Time
        </a>
        </td>
        <td><a>Amount</a></td>
        <td><a>Transaction Type</a></td>
    </tr>
    </thead>

    <tbody>


    <!-- ngRepeat: tx in transactions | orderBy:sortType:sortReverse | sDate:startDate:end --><tr id="anchor0" ng-repeat="tx in transactions | orderBy:sortType:sortReverse | sDate:startDate:end" class="ng-scope">
        <td class="ng-binding">Dec 13, 2016 10:54:12 AM</td>
    <td class="ng-binding">12</td>
        <td class="ng-binding">Debit</td>
        </tr><!-- end ngRepeat: tx in transactions | orderBy:sortType:sortReverse | sDate:startDate:end --><tr id="anchor1" ng-repeat="tx in transactions | orderBy:sortType:sortReverse | sDate:startDate:end" class="ng-scope">
        <td class="ng-binding">Dec 13, 2016 10:54:10 AM</td>
    <td class="ng-binding">155</td>
        <td class="ng-binding">Debit</td>
        </tr><!-- end ngRepeat: tx in transactions | orderBy:sortType:sortReverse | sDate:startDate:end --><tr id="anchor2" ng-repeat="tx in transactions | orderBy:sortType:sortReverse | sDate:startDate:end" class="ng-scope">
        <td class="ng-binding">Dec 13, 2016 10:54:05 AM</td>
    <td class="ng-binding">32</td>
        <td class="ng-binding">Credit</td>
        </tr><!-- end ngRepeat: tx in transactions | orderBy:sortType:sortReverse | sDate:startDate:end --><tr id="anchor3" ng-repeat="tx in transactions | orderBy:sortType:sortReverse | sDate:startDate:end" class="ng-scope">
        <td class="ng-binding">Dec 13, 2016 10:54:03 AM</td>
    <td class="ng-binding">1000</td>
        <td class="ng-binding">Credit</td>
        </tr><!-- end ngRepeat: tx in transactions | orderBy:sortType:sortReverse | sDate:startDate:end --><tr id="anchor4" ng-repeat="tx in transactions | orderBy:sortType:sortReverse | sDate:startDate:end" class="ng-scope">
        <td class="ng-binding">Dec 8, 2016 4:45:08 PM</td>
    <td class="ng-binding">100</td>
        <td class="ng-binding">Debit</td>
        </tr><!-- end ngRepeat: tx in transactions | orderBy:sortType:sortReverse | sDate:startDate:end --><tr id="anchor5" ng-repeat="tx in transactions | orderBy:sortType:sortReverse | sDate:startDate:end" class="ng-scope">
        <td class="ng-binding">Dec 8, 2016 4:44:43 PM</td>
    <td class="ng-binding">210</td>
        <td class="ng-binding">Credit</td>
        </tr><!-- end ngRepeat: tx in transactions | orderBy:sortType:sortReverse | sDate:startDate:end -->
    </tbody>

    </table>

我正在添加示例代码,我正在尝试测试此网站。多种方式我试图解决我的问题,但未能解决。现在帮助大家摆脱它 -

it("Column values",function () {
browser.get('http://www.way2automation.com/angularjs-protractor/banking/#/listTx#anchor');
browser.sleep(1500);
var rows = element.all(by.repeater("tx in transactions"));

var data = rows.map(function (row) {
    var cells = row.all("td");
    return {
        value1: cells.first().getText(),
        value2: cells.get(1).getText(),
        value3: cells.get(2).getText()
    }
});

    expect(data).toEqual([
        {value1: "Dec 8, 2016 4:44:43 PM", value2: "210", value3: "Credit"},
        {value1: "Dec 8, 2016 4:45:08 PM", value2: "100", value3: "Debit"}
    ]);

我希望这些值来自HTML Dec 8,2016 4:44:43 PM 210 信用

1 个答案:

答案 0 :(得分:1)

您需要解析val (k1, k2, k3) = userForm.bindFromRequest.get 方法以获取单元格值。如下所示

 val userForm = Form(
        tuple(
          "k1" -> optional(v1),
          "k2" -> Some(optional(v2)),
          "k3" -> Some(optional(v3))
        )
      )