我们正在使用 detox 编写反应原生应用程序的 E2E 测试,其中我们有一个案例需要测试按钮点击后是否出现模式。
但是 detox 无法根据给定的testID
想法识别模态,模态按预期打开。使用排毒在反应性中测试模态是否有不同的方法?
下面是模态 JSX
<Modal
testID="loadingModal"
animationType="none"
transparent
visible={loading}
onRequestClose={() => {}}
>
<View style={styles.modalContainer}>
<View style={styles.loginModal}>
<ActivityIndicator
animating
size="large"
color="#00e0ff"
/>
<Text style={styles.login}>Logging in...</Text>
</View>
</View>
</Modal>
下面是测试模态可见性的代码
it('should have welcome screen', async () => {
....
await element(by.text('CONTINUE')).tap();
await waitFor(element(by.id('loadingModal'))).toBeVisible().withTimeout(5000);
await expect(element(by.id('loadingModal'))).toBeVisible(); // this always fails
});