簡體   English   中英

React Native:如何在 Detox 測試中從一個屏幕導航到另一個屏幕

[英]React Native: How to navigate from one screen to another in Detox tests

我正在嘗試使用 Detox 為我的應用程序編寫測試。 但是在從登錄屏幕導航屏幕時,我的測試由於找不到匹配器而失敗。 我在渲染函數中正確添加了 testID 仍然出現錯誤。 這是我的測試代碼:

it('should login successfully', async () => {
await device.reloadReactNative();

await element(by.id('textInput_username_login')).typeText('test');
await element(by.id('textInput_password_login')).typeText('123456');
await element(by.text('Log In')).tap();
await expect(element(by.id('otp'))).toBeVisible();
});

得到以下錯誤:

Test Failed: No elements found for “MATCHER(identifier == “ otp” && NOT DESCENDANT(class ⊇ “RCTTextView” && identifier == “ otp”))”

提前致謝。

不得正確添加 testID。 如果您在 iOS 上運行,您可以添加 --loglevel 詳細參數並查看您希望看到的元素的打印層次結構,並檢查 id 是否在其上,或者它是否甚至在屏幕上。

另一種選擇是使用 Flutter 的布局檢查器來查找元素並驗證它是否具有與“otp”匹配的測試 ID: https : //fbflipper.com 您可以將它下載為桌面應用程序,但 Mac 會抱怨,因為它不是來自 App Store,只是作為提醒。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM