我正在尝试通过 https 使用 Windmill 测试框架。我正在使用 Python 2.7 运行 Ubuntu 11.10,通过 pip 安装windmill
并pyopenssl
在 virtualenv 中。(安装顺序包含在下面以供参考。)
当我运行windmill firefox http://en.wikipedia.org
Windmill IDE 时运行良好。当我运行windmill firefox https://en.wikipedia.org
Firefox 时启动,但 IDE 从未出现。(我已经验证,当 Windmill 在 Ubuntu 上启动 Firefox 时,已经安装了 https 的 CA。)
我遇到了错误,还是我需要做其他事情才能让 IDE 处理 https 地址?
安装顺序
myuser@mycomputer:~$ mkvirtualenv --no-site-packages windmill_test
New python executable in windmill_test/bin/python
Installing distribute....................................................................................................................................................................................done.
Installing pip...............done.
virtualenvwrapper.user_scripts creating /home/myuser/.virtualenvs/windmill_test/bin/predeactivate
virtualenvwrapper.user_scripts creating /home/myuser/.virtualenvs/windmill_test/bin/postdeactivate
virtualenvwrapper.user_scripts creating /home/myuser/.virtualenvs/windmill_test/bin/preactivate
virtualenvwrapper.user_scripts creating /home/myuser/.virtualenvs/windmill_test/bin/postactivate
virtualenvwrapper.user_scripts creating /home/myuser/.virtualenvs/windmill_test/bin/get_env_details
(windmill_test)myuser@mycomputer:~$ pip install pyopenssl
Downloading/unpacking pyopenssl
Downloading pyOpenSSL-0.13.tar.gz (250Kb): 250Kb downloaded
Running setup.py egg_info for package pyopenssl
warning: no previously-included files matching '*.pyc' found anywhere in distribution
Installing collected packages: pyopenssl
Running setup.py install for pyopenssl
building 'OpenSSL.crypto' extension
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c OpenSSL/crypto/crypto.c -o build/temp.linux-i686-2.7/OpenSSL/crypto/crypto.o
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c OpenSSL/crypto/x509.c -o build/temp.linux-i686-2.7/OpenSSL/crypto/x509.o
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c OpenSSL/crypto/x509name.c -o build/temp.linux-i686-2.7/OpenSSL/crypto/x509name.o
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c OpenSSL/crypto/pkey.c -o build/temp.linux-i686-2.7/OpenSSL/crypto/pkey.o
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c OpenSSL/crypto/x509store.c -o build/temp.linux-i686-2.7/OpenSSL/crypto/x509store.o
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c OpenSSL/crypto/x509req.c -o build/temp.linux-i686-2.7/OpenSSL/crypto/x509req.o
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c OpenSSL/crypto/x509ext.c -o build/temp.linux-i686-2.7/OpenSSL/crypto/x509ext.o
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c OpenSSL/crypto/pkcs7.c -o build/temp.linux-i686-2.7/OpenSSL/crypto/pkcs7.o
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c OpenSSL/crypto/pkcs12.c -o build/temp.linux-i686-2.7/OpenSSL/crypto/pkcs12.o
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c OpenSSL/crypto/netscape_spki.c -o build/temp.linux-i686-2.7/OpenSSL/crypto/netscape_spki.o
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c OpenSSL/crypto/revoked.c -o build/temp.linux-i686-2.7/OpenSSL/crypto/revoked.o
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c OpenSSL/crypto/crl.c -o build/temp.linux-i686-2.7/OpenSSL/crypto/crl.o
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c OpenSSL/util.c -o build/temp.linux-i686-2.7/OpenSSL/util.o
gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions build/temp.linux-i686-2.7/OpenSSL/crypto/crypto.o build/temp.linux-i686-2.7/OpenSSL/crypto/x509.o build/temp.linux-i686-2.7/OpenSSL/crypto/x509name.o build/temp.linux-i686-2.7/OpenSSL/crypto/pkey.o build/temp.linux-i686-2.7/OpenSSL/crypto/x509store.o build/temp.linux-i686-2.7/OpenSSL/crypto/x509req.o build/temp.linux-i686-2.7/OpenSSL/crypto/x509ext.o build/temp.linux-i686-2.7/OpenSSL/crypto/pkcs7.o build/temp.linux-i686-2.7/OpenSSL/crypto/pkcs12.o build/temp.linux-i686-2.7/OpenSSL/crypto/netscape_spki.o build/temp.linux-i686-2.7/OpenSSL/crypto/revoked.o build/temp.linux-i686-2.7/OpenSSL/crypto/crl.o build/temp.linux-i686-2.7/OpenSSL/util.o -lssl -lcrypto -o build/lib.linux-i686-2.7/OpenSSL/crypto.so
building 'OpenSSL.rand' extension
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c OpenSSL/rand/rand.c -o build/temp.linux-i686-2.7/OpenSSL/rand/rand.o
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c OpenSSL/util.c -o build/temp.linux-i686-2.7/OpenSSL/util.o
gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions build/temp.linux-i686-2.7/OpenSSL/rand/rand.o build/temp.linux-i686-2.7/OpenSSL/util.o -lssl -lcrypto -o build/lib.linux-i686-2.7/OpenSSL/rand.so
building 'OpenSSL.SSL' extension
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c OpenSSL/ssl/connection.c -o build/temp.linux-i686-2.7/OpenSSL/ssl/connection.o
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c OpenSSL/ssl/context.c -o build/temp.linux-i686-2.7/OpenSSL/ssl/context.o
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c OpenSSL/ssl/ssl.c -o build/temp.linux-i686-2.7/OpenSSL/ssl/ssl.o
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c OpenSSL/util.c -o build/temp.linux-i686-2.7/OpenSSL/util.o
gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions build/temp.linux-i686-2.7/OpenSSL/ssl/connection.o build/temp.linux-i686-2.7/OpenSSL/ssl/context.o build/temp.linux-i686-2.7/OpenSSL/ssl/ssl.o build/temp.linux-i686-2.7/OpenSSL/util.o -lssl -lcrypto -o build/lib.linux-i686-2.7/OpenSSL/SSL.so
warning: no previously-included files matching '*.pyc' found anywhere in distribution
Successfully installed pyopenssl
Cleaning up...
(windmill_test)myuser@mycomputer:~$ pip install windmill
Downloading/unpacking windmill
Downloading windmill-1.6.tar.gz (1.6Mb): 1.6Mb downloaded
Running setup.py egg_info for package windmill
Installing collected packages: windmill
Running setup.py install for windmill
Installing windmill script to /home/myuser/.virtualenvs/windmill_test/bin
Successfully installed windmill
Cleaning up...
(windmill_test)myuser@mycomputer:~$ pip freeze
distribute==0.6.19
pyOpenSSL==0.13
windmill==1.6
wsgiref==0.1.2
http
(windmill_test)myuser@mycomputer:~$ windmill firefox http://en.wikipedia.org
windmill.bin.shell_objects: INFO ['/home/myuser/.mozilla/firefox/p3t9ijqj.mozrunner//mozrunner-firefox', '-profile', '/home/myuser/.mozilla/firefox/p3t9ijqj.mozrunner/', 'http://en.wikipedia.org/windmill-serv/start.html']
尝试加载http://en.wikipedia.org/windmill-serv/start.html但解析为http://en.wikipedia.org/wiki/Main_Page。IDE 加载。
https
(windmill_test)myuser@mycomputer:~$ windmill firefox https://en.wikipedia.org
windmill.bin.shell_objects: INFO ['/home/myuser/.mozilla/firefox/p3t9ijqj.mozrunner//mozrunner-firefox', '-profile', '/home/myuser/.mozilla/firefox/p3t9ijqj.mozrunner/', 'https://en.wikipedia.org/windmill-serv/start.html']
尝试加载https://en.wikipedia.org/windmill-serv/start.html并解析到该页面(显示 404 页面,然后重定向到https://en.wikipedia.org/wiki/Windmill- serv/start.html - 我只是在这里使用 Wikipedia 作为示例,因此它返回 404 或“Wikipedia 没有具有此确切名称的文章”并不重要)。IDE 从不加载。