栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何使用输入调用测试功能?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何使用输入调用测试功能?

您可能应该模拟内置

input
功能,可以在每次测试后使用
teardown
提供的功能
pytest
还原为原始
input
功能。

import module  # The module which contains the call to inputclass TestClass:    def test_function_1(self):        # Override the Python built-in input method         module.input = lambda: 'some_input'        # Call the function you would like to test (which uses input)        output = module.function()          assert output == 'expected_output'    def test_function_2(self):        module.input = lambda: 'some_other_input'        output = module.function()          assert output == 'another_expected_output'    def teardown_method(self, method):        # This method is being called after each test case, and it will revert input back to original function        module.input = input

更好的解决方案是将

mock
模块与一起使用
withstatement
。这样,您就不需要使用拆解,并且修补的方法只会存在于
with
范围内。

import mockimport moduledef test_function():    with mock.patch.object(__builtins__, 'input', lambda: 'some_input'):        assert module.function() == 'expected_output'


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/637980.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号