[PyQt] PyQt5==5.7.1 Missing libQt5QuickTest.so.5

Phil Thompson phil at riverbankcomputing.com
Thu Mar 16 12:06:00 GMT 2017


On 14 Mar 2017, at 4:20 pm, Cody Scott <cody at perspexis.com> wrote:
> 
> The types defined in C++ need to be registered before calling QUICK_TEST_MAIN()
> 
> https://github.com/qt/qtquickcontrols/blob/5.8/src/controls/plugin.cpp#L159
> 
> Sorry if I don't understand your question.

If you look at what QUICK_TEST_MAIN expands to (a complete self contained main() function), there is no opportunity to register the types. The code you refer to is implemented in a plugin which (I assume) gets loaded by the internals of QUICK_TEST_MAIN. Plugins don't play well with Python - see the restrictions on using qmlscene.

I will look at how to test QML from Python in the future - but not at the moment (unless somebody has a bright idea).

Phil

> On Sat, Mar 11, 2017 at 1:59 PM, Phil Thompson <phil at riverbankcomputing.com> wrote:
> On 8 Mar 2017, at 4:53 pm, Cody Scott <cody at perspexis.com> wrote:
> >
> > It seems that you can't do this. Qt handles QuickTest specially. It won’t load the package if the program is not started via QUICK_TEST_MAIN.
> >
> > Is this something that PyQt5 is missing because there is no sip wrapper for QUICK_TEST_MAIN?
> >
> > Is there another way to run QML tests with a type registered in Python?
> 
> How does the C++ implementation of registered types get loaded when using QUICK_TEST_MAIN?
> 
> Phil
> 



More information about the PyQt mailing list