2017-06-28 47 views
1

我想爲使用Native Native編寫的應用程序創建自動測試。我只想測試邏輯(不是UI)。如何在自動應用程序的設備測試中自動執行?

玩笑似乎是單位或將一臺計算機上運行,​​甚至集成測試很好的解決方案。但我想在真實設備上測試應用程序。我有一個沒有UI的組件,它執行一些邏輯,與其他設備進行無線通信等。我需要特別測試該通信,這是無需設備就無法完成的。

是否有任何框架或標準的解決方案,以做這種事?

回答

0

好吧,我做了我的關於測試的研究反應的本地應用程序。

目前ReactNative不提供獨立於平臺的測試框架,可以在真機上運行的集成(未UI)測試。實際上有一個RCTTestRunner,但它的功能是有限的,它只適用於iOS設備。

功能測試

有多種功能測試框架。這些測試主要依賴於UI組件,並用於用戶交互的黑盒測試。有兩種成熟的跨平臺框架可用於此:CalabashAppium。 Appium似乎是更好的解決方案,因爲它是兩種平臺的單一工具(Calabash實際上是爲iOS和Android設置的兩個項目)。另外,當Calabash僅支持Ruby時,Appium支持多種語言(JavaScript,Python,Java,...)。

還有一個Cavy項目,看起來很有希望,但使用在哈克的方式作出反應裁判生成函數,需要在應用程序代碼多次修改。

但所有這一切的目的是隻做UI測試。

Workaroud溶液

我用於測試的應用程序的邏輯(沒有通過用戶界面的變化的影響)將溶液以下。我創建了特殊版本的應用程序(通過創建新的目標),這些應用程序已經用測試版替換了主UI組件。該測試組件在應用程序的頂部運行。它只是觸發測試並顯示日誌。這些日誌然後被功能測試框架讀取和解析以生成報告。

相關問題