changing constants for unit tests
我在Cocoa中为一个数据驱动的应用程序编写一些单元测试。
我有一个常量头文件,它定义了一整堆变量,包括到数据库的路径等。
我想知道是否可以让所有类使用一组不同的常量,这些常量将链接到数据库的测试版本等。
我尝试重新定义常量,但它不会在全球范围内生效。
相反,您可以拥有一个包含所有使用的常量的结构,并将其传递到对象的构造函数中。通常,该结构将是运行所需的任何值,但在测试时,您将传递一个具有初始化为测试参数的字段的结构。
不过,我对目标C一无所知,所以我不确定这对你是否可行。
可以将所有常量放入具有常量只读属性的singleton对象中。然后您可以模拟常量对象并更改常量。