我对Google App Engine和Python还比较陌生,请谅解。 我正在尝试在GAE上第一次运行一个Python单元测试,遵循Webapp2指南的步骤。
但是当我运行测试时,一直出现以下错误:
Traceback (most recent call last):
File "test.py", line 2, in <module>
import webapp2
ImportError: No module named webapp2
这是我的test.py文件:
import unittest
import webapp2
# from the app main.py
import main
class TestHandlers(unittest.TestCase):
def test_hello(self):
# Build a request object passing the URI path to be tested.
# You can also pass headers, query arguments etc.
request = webapp2.Request.blank('/')
# Get a response for that request.
response = request.get_response(main.app)
# Let's check if the response is correct.
self.assertEqual(response.status_int, 200)
self.assertEqual(response.body, 'Hello, world!')
if __name__ == '__main__':
unittest.main()
这是我的main.py文件:
import webapp2
class HelloHandler(webapp2.RequestHandler):
def get(self):
self.response.write('Hello, world!')
app = webapp2.WSGIApplication([('/', HelloHandler)])
def main():
app.run()
if __name__ == '__main__':
main()
这是我的app.yaml文件:
application: test-app
version: 1
runtime: python27
api_version: 1
threadsafe: true
- url: /.*
script: main.app
libraries:
- name: jinja2
version: latest
builtins:
- remote_api: on
我的当前文件夹结构如下:
Test-app
app.yaml
main.py
test.py
index.yaml
我正在进行测试的运行:
$ cd test-app
$ python test.py
有人能指点我正确的方向,告诉我为什么会出现上面的错误信息以及为什么我无法运行这个简单的测试吗?
我尽可能地发布了尽可能多的信息,希望能足够让有经验的人帮我一下。
谢谢。