gpt4 book ai didi

ios - 如何测试项目中的私有(private)或文件私有(private)函数

转载 作者:可可西里 更新时间:2023-11-01 00:39:11 25 4
gpt4 key购买 nike

我想为管理器类编写一些单元测试代码,我要编写的功能是使用一些小的private 函数。如果要测试public函数,我会准备很多,所以我想测试那些private函数。但是在测试目标中我不能直接调用私有(private)函数。

所以我想问一下,有没有一种方法可以在不将它们从 private 更改为 internalpublic 的情况下进行测试?

最佳答案

So I wanna ask, is there's a way to test them without change them from private to internal or public?

添加一个只调用私有(private)函数的内部函数。可能最好在扩展中进行:

class Foo
{
fileprivate func myPrivateFunction(p: Int) { ... }
}

extension Foo
{
internal func testMyPrivateFunction(p: Int)
{
myPrivateFunc(p: p)
}
}

您可能会找到一种使用条件编译来省略发布构建扩展的方法,例如

#if DEBUG
extension Foo
{
internal func testMyPrivateFunction(p: Int)
{
myPrivateFunc(p: p)
}
}
#endif

没有测试有条件的东西看它是否有效,它是从这里借来的https://ericasadun.com/2018/04/18/forcing-compiler-errors-in-swift/

关于ios - 如何测试项目中的私有(private)或文件私有(private)函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50040270/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com