Testing 如何在非oop语言中测试使用外部资源的私有方法

Testing 如何在非oop语言中测试使用外部资源的私有方法,testing,Testing,我最近读了很多文章,说应该模拟或单元测试私有函数——它们应该是实现细节,但测试不够公平。但是,如果私有方法进行了一些db调用或对其他外部资源的调用,该怎么办?我有了使用依赖注入的想法,但这在非oop、过程类型的语言中似乎是不可能的 似乎不一定要通过公共方法向公众公开数据库调用,所以将方法声明为私有。现在,如果我在一个我确实想要测试的公共函数中使用这个方法,我要么需要使用私有方法的模拟,要么点击db 创建一个接受参数的公共方法的解决方案是一个可能需要查询的方法,然后在私有方法中执行db调用吗?什么

我最近读了很多文章,说应该模拟或单元测试私有函数——它们应该是实现细节,但测试不够公平。但是,如果私有方法进行了一些db调用或对其他外部资源的调用,该怎么办?我有了使用依赖注入的想法,但这在非oop、过程类型的语言中似乎是不可能的

似乎不一定要通过公共方法向公众公开数据库调用,所以将方法声明为私有。现在,如果我在一个我确实想要测试的公共函数中使用这个方法,我要么需要使用私有方法的模拟,要么点击db


创建一个接受参数的公共方法的解决方案是一个可能需要查询的方法,然后在私有方法中执行db调用吗?

什么是非oop语言中的私有方法?用不支持对象的语言编写的私有方法?您能举个例子吗?记住像private/protected这样的访问权限只有在oop中才有意义吗?