autopilot tests crash halfway through.

Bug #1235393 reported by Robert Bruce Park
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
cordova-ubuntu-tests (Ubuntu)
New
Undecided
Maxim Ermilov

Bug Description

I tried running cordova-ubuntu-tests autopilot tests on my desktop (using package 2.11+13.10.20130920.4-0ubuntu1), and what I observed was that the whole cordovamobilespec suite became unresponsive and crashed around test 127 of 270, with 5 failures at that point.

Here is the output from autopilot:

http://paste.ubuntu.com/6192947/

This is blocking my ability to land an updated cordova in the archive, which is needed for the phone image.

Revision history for this message
Maxim Ermilov (zaspire) wrote :

stacktrace?

Revision history for this message
Robert Bruce Park (robru) wrote : Re: [Bug 1235393] Re: autopilot tests crash halfway through.

How would I get a stack trace for this? I didn't at any apport window, and
all the terminal output is already in that paste.
On Oct 4, 2013 11:25 AM, "Maxim Ermilov" <email address hidden> wrote:

> stacktrace?
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/1235393
>
> Title:
> autopilot tests crash halfway through.
>
> Status in “cordova-ubuntu-tests” package in Ubuntu:
> New
>
> Bug description:
> I tried running cordova-ubuntu-tests autopilot tests on my desktop
> (using package 2.11+13.10.20130920.4-0ubuntu1), and what I observed
> was that the whole cordovamobilespec suite became unresponsive and
> crashed around test 127 of 270, with 5 failures at that point.
>
> Here is the output from autopilot:
>
> http://paste.ubuntu.com/6192947/
>
> This is blocking my ability to land an updated cordova in the archive,
> which is needed for the phone image.
>
> To manage notifications about this bug go to:
>
> https://bugs.launchpad.net/ubuntu/+source/cordova-ubuntu-tests/+bug/1235393/+subscriptions
>

Revision history for this message
Maxim Ermilov (zaspire) wrote :

> file:///usr/lib/x86_64-linux-gnu/qt5/qml/CordovaUbuntu.2.8/InAppBrowser.qml:18:9: QML Image: Cannot open: file:///usr/lib/x86_64-linux-gnu/qt5/qml/CordovaUbuntu.2.8/assets/close.png
> file:///usr/lib/x86_64-linux-gnu/qt5/qml/CordovaUbuntu.2.8/CaptureWidget.qml:116:9: QML QQuickBorderImage: Cannot open: file:///usr/lib/x86_64-linux-gnu/qt5/qml/CordovaUbuntu.2.8/assets/toolbar-right.png
> file:///usr/lib/x86_64-linux-gnu/qt5/qml/CordovaUbuntu.2.8/CaptureWidget.qml:85:13: QML Image: Cannot open: file:///usr/lib/x86_64-linux-gnu/qt5/qml/CordovaUbuntu.2.8/assets/shoot.png
> file:///usr/lib/x86_64-linux-gnu/qt5/qml/CordovaUbuntu.2.8/CaptureWidget.qml:77:9: QML QQuickBorderImage: Cannot open: file:///usr/lib/x86_64-linux-gnu/qt5/qml/CordovaUbuntu.2.8/assets/toolbar-middle.png
> file:///usr/lib/x86_64-linux-gnu/qt5/qml/CordovaUbuntu.2.8/CaptureWidget.qml:56:13: QML Image: Cannot open: file:///usr/lib/x86_64-linux-gnu/qt5/qml/CordovaUbuntu.2.8/assets/back.png
> file:///usr/lib/x86_64-linux-gnu/qt5/qml/CordovaUbuntu.2.8/CaptureWidget.qml:47:9: QML QQuickBorderImage: Cannot open: file:///usr/lib/x86_64-linux-gnu/qt5/qml/CordovaUbuntu.2.8/assets/toolbar-left.png
> file:///usr/lib/x86_64-linux-gnu/qt5/qml/CordovaUbuntu.2.8/CaptureWidget.qml:27:5: QML Image: Cannot open: file:///usr/lib/x86_64-linux-gnu/qt5/qml/CordovaUbuntu.2.8/assets/microphone.png
broken installation

> How would I get a stack trace for this?
1. Compile libraries with enabled debug symbols.
2. run qmlscene under gdb

Revision history for this message
Maxim Ermilov (zaspire) wrote :

> 1. Compile libraries with enabled debug symbols.
1. Compile cordova-ubuntu's libraries with enabled debug symbols.

Revision history for this message
Robert Bruce Park (robru) wrote :

> broken installation

Well, I tried reinstalling cordova-ubuntu-2.8, cordova-ubuntu-tests, and cordova-ubuntu-autopilot, and it still crashes in the exact same way. So it seems more like the packages are broken rather than my installation. Also:

$ locate CaptureWidget.qml
/usr/lib/x86_64-linux-gnu/qt5/qml/CordovaUbuntu.2.8/CaptureWidget.qml
/usr/lib/x86_64-linux-gnu/qt5/qml/Cordovaqt.2.3/CaptureWidget.qml

So the file is there. Why can't cordova find it?

Revision history for this message
Robert Bruce Park (robru) wrote :

Oh, looked a bit closer. many of the assets have been moved to /usr/share/cordova-ubuntu-2.8/assets/.

Maxim, can you update cordova to look for those files there? Thanks.

Revision history for this message
Robert Bruce Park (robru) wrote :

Still investigating this. I uninstalled the old qtdeclarative5-cordova-2.3-plugin package I had lying around, and now the tests don't even run at all (previously it would get to 127 of 270 before becoming unresponsive). I think this is actually good progress, because it means the old version was interfering with the new version... I'll keep playing with it to see if I can get the tests to pass.

Revision history for this message
Robert Bruce Park (robru) wrote :

Indeed, /usr/lib/x86_64-linux-gnu/qt5/qml/CordovaUbuntu.2.8/assets is supposed to be a symlink to /usr/share/cordova-ubuntu-2.8/assets/, but instead it's an empty directory. If I turn it into a symlink, the cordova mobile spec window appears, but looks completely different than what I had before. it's also still not running, which is strange.

Revision history for this message
Robert Bruce Park (robru) wrote :

Some progress; I've landed fixes for comment #7[0], and comment #8[1], but the tests still aren't running. mobilespec window opens, is blank, dims due to being unresponsive, and then crashes. I'm getting some different console output now[2], note that it takes over 700s to run.

[0] http://bazaar.launchpad.net/~cordova-ubuntu/cordova-ubuntu-tests/trunk/revision/16
[1] http://bazaar.launchpad.net/~cordova-ubuntu/cordova-ubuntu/2.8/revision/246
[2] http://paste.ubuntu.com/6211579/

Revision history for this message
Maxim Ermilov (zaspire) wrote :

Does it work without autopilot?
e.g.
1. run cordova-ubuntu-2.8 path_to_www
2. press autotest button
3. press all button

> WebView received Message: {"messageType":"callPluginFunction","plugin":"com.cordova.Capture","func":"getSupportedFormats","params":[6,7]}
> (qmlscene:7739): GLib-GObject-WARNING **: cannot register existing type 'GstFormat'
look like missing dependency for qtmultimedia package

Revision history for this message
Robert Bruce Park (robru) wrote :

Ahhhhh! Yes, without autopilot, the tests run through to completion without crashing. There are 5 failures, and it plays some music. This is the first time I've ever seen it get to run all of the tests.

So, I guess that indicates that autopilot is creating a broken test environment?

Revision history for this message
Robert Bruce Park (robru) wrote :

Unfortunately if I try this on the device, the window doesn't seem to appear anywhere that I can find it, so I have no way to click the 'run all tests' button.

Revision history for this message
Robert Bruce Park (robru) wrote :

I was able to make the window appear by typing the command onto the device directly (eg, not through ssh), but it was unresponsive and doesn't show in the unity8 app switcher. Do these tests run for anybody else? Am I crazy or something here?

Revision history for this message
Maxim Ermilov (zaspire) wrote :

I test it yesterday on phone, it's work fine(only expected failures).

> Exec=/usr/bin/cordova-ubuntu-2.8 /usr/share/cordova-ubuntu-tests/www
btw desktop file for cordova-ubuntu-tests is incorrect.

Revision history for this message
Robert Bruce Park (robru) wrote :

Maxim, what i need you to do is flash your phone into a clean slate (no backup) and then get the tests running again. I'm about 99% certain that there are missing deps on the cordova packages, but I don't know what they are. For example, I started a fresh desktop VM and tried to run the tests, but it failed due to qmlscene not being installed. Once I installed qmlscene I got the same failures that I get on the host system. So I know for sure that we're missing a dep on qmlscene, and we're most likely missing other deps too, but it's not clear to me what. It's just clear to me that you have them installed and I don't, causing failures.

Also, does cordova produce a log file anywhere? There are tons of errors being displayed in the cordova window that I can't seem to copy&paste in any way in order to report them. The terminal output looks like this though:

http://paste.ubuntu.com/6217037/

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.