【问题标题】:How to use doctest on a Client script?如何在客户端脚本上使用 doctest?
【发布时间】:2009-11-17 08:31:31
【问题描述】:

我正在使用 Google Calendar API,创建一些有用的功能。

另一方面,我想把一些有用的 doctest 做好并开始敏捷开发。

  • 如何编写 doctest,因为每个函数的结果并不是真正可预测的(取决于服务器上的新内容):

    >>> calendar = GoogleCalendar(user='blabla', password='blablabla')
    >>> calendar.list()
    login@trunat.fr's Calendar List
        0. ...
        ...
    
  • 如果我不想在源代码中留下密码,我该怎么办?

  • 如何为一个类的所有函数编写测试,而不用每次都为每个函数编写相同的东西?

    >>> calendar = GoogleCalendar(user='blabla', password='blablabla')
    >>> calendar.myFunction()
    
  • 对于 GoogleCalendar 的每个功能,我必须先创建对象?

感谢您的帮助

【问题讨论】:

    标签: python google-api password-protection doctest


    【解决方案1】:

    如果您决定测试外部服务,您可以使用测试夹具:

    • 编写一个make_test_server() 函数,它将返回一个新的服务器连接以简化您的测试。
    • 使其成为具有可预测输出的测试夹具(服务器的虚拟)make_dummy_test_server()
    • 对其进行测试,并确保考虑到所有情况(连接错误、返回空集)。

    这取决于您的测试应该有多详尽。如果您从该代码区域得到很多错误,那么您可能需要更多测试。如果您的代码有效,则可能不值得大汗淋漓。

    您是否也在进行代码审查?系统测试?单元测试很棒,但请确保不要太短视。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-10-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-31
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多