0

我使用 App Engine 运行我的应用程序并想测试它如何处理服务器错误。是否有可能通过WebTest模拟错误 500 ?

4

2 回答 2

3

我使用 try except 循环解决了它。

try:
    self.testapp.get('/')
    self.assertEqual(1, 2, 'GET request should have resulted in a 405 error') # Purposely fail
except webtest.app.AppError:
    pass

另一种方法如下:

self.assertEqual("500 Internal Server Error", self.testapp.post('/', params={}, expect_errors=True).status, 'POST Request should have resulted in a 500 error')

这两种方法仍然会导致出现回溯但测试通过

于 2012-11-27T20:33:22.977 回答
1

500 错误正是您的 web 应用程序在遇到未捕获的异常时返回给客户端的内容。这不是一个特定的失败 - 只是当出现意外错误时它向用户显示的内容。相反,您应该对您的处理程序进行单元测试,以确保它们按预期运行。

于 2011-06-24T00:45:05.183 回答