Apache Cordova uses Jasmine (and similar) for unit and component tests but also integration testing. Appium is used for interface testing, but to be honest that is just a very limited number of tests on one plugin. You can read about it here: https://github.com/apache/cordova-contribute/blob/master/testing.md So Cordova has the advantage of not actually doing much UI stuff themselves, but the user does that in their web app that is included in Cordova, thus Apache Cordova itself just has to make sure the APIs it offers are correct and working.
What might be interesting to you, is https://github.com/apache/cordova-paramedic which is a tool that the Cordova plugins use to _run_ the tests on different platforms and OS versions on both simulators on Travis but also SauceLabs. See here for example: https://travis-ci.org/apache/cordova-plugin-device/builds/553740200 If you are interested in that, I can give you an overview how exactly that works. -J Am Mo., 12. Aug. 2019 um 05:10 Uhr schrieb 王仁敏 <[email protected]>: > > I have recently designed a test framework with York, and we want to add > some end-to-end test cases to improve the stability and robustness of Weex. > > > Our expected testing framework want to verify basic properties of the View, > instead of plain text(Because plain text verification has too many > limitations) > > > > For all test cases, the following three processes are required: > > 1. Create UIViewController/Activity > > 2. Simulate user input > > 3. Check if the result is right > > > We thought of several possible solutions: > > > ## 1. Based on the pure Native testing framework. > > Weex provides the ability to load pages from a URL file. If you don't rely > on the emulator, you need call some interface to convert the URL to a page > (York said this process can't build success) > > > ## 2. Based on the Detox(end-to-end framework) and simulator. > > - Create page: build the page based on the URL (the entire Android > project is already running, so we can call the interface) > - Simulate user input: (1) simulate user input via JS (2) simulate user > click event using native code > - Test result: on the Native Side, compare View's properties with the > expected. If it is consistent, notify the JS the test case is succeeded, > otherwise, notify the JS the test case is failed. > > But Android emulator has many limitations. According to our survey, the > Travis CI Android emulator is slower, and the X86 emulator Google has not > been updated for three years, and the ARM emulator is subject to the Travis > CI architecture. > > > @Jan, I learn about you have done some works about > Cordova-testing-framework recently. How do you solve this problem? > > > I will be very appreciated if anyone can help me, thanks very much! > > > Best wished. > > Renmin
