cordova-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Shazron <shaz...@gmail.com>
Subject Re: Adding unit tests to travis for Android/iOS
Date Fri, 13 Feb 2015 00:54:30 GMT
cordova-ios' travis integration runs project creation tests as well as
the Objective-C unit tests. So far I've been updating the unit tests
if there is a change in any platform code that can be unit tested.

Right now iOS is failing on Travis because ios-sim is not found
(although this should be better when ios-sim 4.0 is released) because
of this test: https://github.com/apache/cordova-ios/blob/master/tests/spec/create.spec.js#L108-L120

On Thu, Feb 12, 2015 at 4:39 PM, Murat Sutunc <muratsu@microsoft.com> wrote:
> Before moving on to plugins, I would like to get full consensus on CI unit-tests for
android & ios. If we all agree on it, let's create JIRA items and start working on it.
>
> For plugin testing we can create a separate thread and discuss in more detail. There
has been a lot of work going on with medic. Instead of introducing another test tool perhaps
we can improve on existing code and make it more configurable/modular.
>
> -----Original Message-----
> From: Shazron [mailto:shazron@gmail.com]
> Sent: Thursday, February 12, 2015 4:23 PM
> To: dev@cordova.apache.org
> Subject: Re: Adding unit tests to travis for Android/iOS
>
> I've been trying out cordova-paramedic, and it's great. Being able to quickly run the
tests for a plugin (to test pull requests) is a big time saver vs having to run createmobilespec,
and if we get the travis/appveyor integration this will be even more seamless
>
> On Thu, Feb 12, 2015 at 1:57 PM, Jesse <purplecabbage@gmail.com> wrote:
>> Currently cordova-ios, cordova-android, cordova-windows, cordova-wp8
>> all have travis||appveyor integration in their github mirrors.
>>
>> These tests should definitely be extended to include much much more.
>> For the most part they are currently just testing project creation,
>> but ios and android can run on travisCI emulators so we can include
>> runtime platform tests also.
>>
>> On a similar note, I have been working on plugin tests via what I have
>> been calling cordova-paramedic [1]
>>
>> Essentially cordova-paramedic takes a platform and a plugin, creates
>> the project, installs the plugin, installs the plugin tests, installs
>> cordova-plugin-test-framework and runs the tests. There is also a
>> local server started, and the medic.json file points back to it, so
>> the command line running the tests via the emulator can see the results.
>>
>> I have this working for the device && file plugins on ios[2] via my
>> own forks.  We are going to need INFRA to setup the github
>> appveyor+travis integration for EVERY core plugin.  I will be writing
>> considerably more about this in the next couple weeks, I am currently
>> working through some issues with wp8 emulator (a vm) being run on a vm
>> in appveyor land, as the emulator and servers are on different virtual networks.
>>
>>
>> [1] ... provides advanced levels of care at the point of illness or
>> injury https://github.com/purplecabbage/cordova-paramedic
>>
>> [2]
>> https://travis-ci.org/purplecabbage/cordova-plugin-device/builds/48971
>> 021
>> {
>>    "mobilespec":{
>>       "specs":8,
>>       "failures":0,
>>       "results":[
>>
>>       ]
>>    },
>>    "platform":"ios",
>>    "version":"8.1",
>>    "timestamp":1422667864,
>>    "model":"x86_64"
>> }
>> Results:: ran 8 specs with 0 failures
>>
>>
>>
>>
>>
>>
>> @purplecabbage
>> risingj.com
>>
>> On Thu, Feb 12, 2015 at 1:34 PM, Joe Bowser <bowserj@gmail.com> wrote:
>>
>>> +1.  I know Travis has JUnit integration and thanks to Android
>>> +Studio, the
>>> only easy way to debug Cordova without copying and pasting code out
>>> of a generated project is to open the test project.  There should be
>>> no excuse to not write tests since it's harder/more annoying to use
>>> the CLI when working on platforms, since you need to make sure you
>>> copy everything you changed.
>>>
>>> On Thu, Feb 12, 2015, 1:22 PM Murat Sutunc <muratsu@microsoft.com> wrote:
>>>
>>> > There has been a lot of discussion about tests lately and I feel
>>> > the urge to jump in and make some suggestions regarding the way we test
things.
>>> I'm
>>> > still fairly new in the community and sometimes don't have the
>>> > whole background story, so please if I'm missing something let me know.
>>> >
>>> > Currently we have bunch of platforms with failing tests. I'm
>>> > assuming that, when these tests were first added, they were all
>>> > passing. My theory is that over time platforms moved forward but
>>> > tests remain stagnant and
>>> now
>>> > bunch of them are failing. I think we should consider running these
>>> > tests automatically to ensure:
>>> >
>>> > a)      We keep maintaining unit-tests tests regularly
>>> >
>>> > b)      We run all unit tests before checking in code
>>> >
>>> > c)       Reduce the friction for new developers
>>> > For unit tests, I think it's a good idea to integrate them into CI
>>> builds.
>>> > This will probably add some extra time on travis/appveyor but it
>>> shouldn't
>>> > take more than 1hr. I think it's a fair trade off to wait some more
>>> > and have an overall more stable Cordova. We can always skip the CI
>>> > build step if it's an urgent fix (security, critical bug, etc).
>>> > I've checked travis and both iOS and Android configs come with SDK
>>> > tools preinstalled, so
>>> there
>>> > are no blockers to going forward with this.
>>> >
>>> > Thoughts?
>>> >
>>> >
>>> >
>>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@cordova.apache.org
> For additional commands, e-mail: dev-help@cordova.apache.org
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@cordova.apache.org
> For additional commands, e-mail: dev-help@cordova.apache.org

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@cordova.apache.org
For additional commands, e-mail: dev-help@cordova.apache.org


Mime
View raw message