我无法在Python3.7 / pytest中运行我的单元测试。该应用程序是flask-restplus应用程序,我正在使用sqlalchemy和psycopg2与PostgreSQL10数据库进行交互。在更新我的系统之前,该代码可以正常工作。不久前运行brew update
和brew upgrade
之后,openssl安装为openssl@1.1,特别是openssl@1.1.1b。我收到的确切错误是
E ImportError: dlopen(/Users/myuser/myproject/.tox/dev/lib/python3.7/site-packages/psycopg2/_psycopg.cpython-37m-darwin.so, 2): Library not loaded: @rpath/libssl.1.1.dylib
E Referenced from: /Users/myuser/myproject/.tox/dev/lib/python3.7/site-packages/psycopg2/_psycopg.cpython-37m-darwin.so
E Reason: image not found
此外,我正在运行OSX Mojave版本10.14.4。
我尝试了符号链接库并重新安装openssl以及此处提到的其他方法:psycopg2 installation error - Library not loaded: libssl.dylib。请注意,我将符号链接中的openssl版本更改为1.1,而不是1.0,但这仍然无法解决问题。
我希望测试能够通过(它们在同事安装程序上进行,这与MacBook,OS版本和自制软件相同),但是任何与数据库进行交互的测试都会失败,并出现上述错误。