4

我需要使用原生 IOS DatePicker 输入一天。如何将控制轮旋转到可能不在视图中的某个值,因为它从当前日期开始?

在此处输入图像描述

4

2 回答 2

4

Detox 7.3.x 支持与 iOS 交互UIPickerView。按类型匹配UIPickerView,并与之交互。

await expect(element(by.type('UIPickerView'))).toBeVisible();
await element(by.type('UIPickerView')).setColumnToValue(1,"6");
await element(by.type('UIPickerView')).setColumnToValue(2,"34");

文档在这里: https ://github.com/wix/detox/blob/master/docs/APIRef.ActionsOnElement.md#setcolumntovaluecolumnvalue--ios-only

于 2018-04-17T19:25:15.647 回答
2

datetimepicker 有 Detox 测试,你可以在这里查看代码:

https://github.com/react-native-community/datetimepicker/blob/master/example/e2e/detoxTest.spec.js#L54

if (global.device.getPlatform() === 'ios') {
      const testElement = await element(
        by.type('UIPickerView').withAncestor(by.id('dateTimePicker')),
      );
      await testElement.setColumnToValue(0, 'November');
      await testElement.setColumnToValue(1, '3');
      await testElement.setColumnToValue(2, '1800');

      await expect(dateTimeText).toHaveText('11/03/1800');
    } else {
       // for Android
    }
于 2020-03-18T20:02:43.413 回答