使用Xamarin UItest Cross Platform在本地设备上无法输入文本

时间:2016-11-05 09:27:17

标签: xamarin calabash uitest

所以我正在玩Xamarin UI测试(我认为它使用了葫芦)并且无法在我本地连接的设备上输入文字

我有一个带有Xamarin / update 3的Cordova / Ionic应用程序(6.3.1 / 1.2.4)visual Studio 2015.我已经将apk添加到项目中

我想使用本地设备编写测试,然后将其上传到测试云以进行自动测试。

我有一个名为testInput

的简单输入文本字段
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-controller="MyCtrl" ng-app="myApp">
   <div ng-repeat="listname in get_checklist">
  <span ng-click="show = !show"> Add Item </span>
    <div ng-show ="show" ng-cloak class="labelBoardpopup memberBoardpopup" layout="row" layout-wrap>
        <h3>Create Item</h3>
        <div class="createBoardpopupform" layout="row">
        <form flex>
            <md-input-container class="md-block" flex-gt-sm>
                <label>Item name</label>
                <input ng-model="CKItem" ng-required="true">
            </md-input-container>
            <md-button class="md-raised md-primary">Add</md-button>
        </form>
        </div>
    </div>
</div>

要在那里输入文字,我可以通过id和EnterText

找到它
<ion-view view-title="Where are the Coffee shops?">
    <ion-content>
    <input type="text" id="testInput" class="testInput" placeholder="Enter some text here" />
    </ion-content>
</ion-view>

这在测试云中运行良好(屏幕截图证明了这一点)。但如果我在我的本地连接设备(三星S6边缘Android 6.0.1)上运行它,我就无法输入任何文本。

我尝试过使用不同的键盘,快捷键,谷歌,三星默认。 在每个我已经关闭预测文本。没有快乐

我尝试向下滚动到项目,然后是EnterText(带选择器)

        app.EnterText(c => c.Css("input#testInput"), "blah blah blah");

点击该项目,然后输入文字(无选择器)

    app.ScrollDownTo(c => c.Css("input#testInput"));
    app.EnterText(c => c.Css("input#testInput"), "blah blah blah");

每次我都得到同样的东西。输入框被选中。出现键盘,然后没有输入文字。日志说 使用元素匹配Css(“input#testInput”)。

        app.Tap(c => c.Css("input#testInput"));
        app.EnterText("blah blah blah");

如果重要,我已经按照以下方式启动了应用程序

Tapping coordinates [ 384, 1456 ].
Entering text 'blah blah blah'.
Took screenshot. { Path: "XXXX\CoffeeShop.UITest\bin\Debug\screenshot-1.png", Title: "EnterSomeText2" }

有没有人知道其他任何事情?

0 个答案:

没有答案