Closed. This question needs to be more focused。它当前不接受答案。
                            
                        
                    
                
                            
                                
                
                        
                            
                        
                    
                        
                            想改善这个问题吗?更新问题,使其仅通过editing this post专注于一个问题。
                        
                        3年前关闭。
                                                                                            
                
        
因此,我要在一个较旧的项目中添加一些新功能。我可以对几个类进行单元测试,而不必依赖于遗留代码中的任何功能。但是,我已经到达了一个阶段,功能的下一阶段非常依赖于遗留代码,以至于看来我基本上必须从项目(或至少大部分设置)中运行主体。能够对我最新的课程进行单元测试。尝试进行单元测试时,是否存在某种方法来处理可笑的依赖项?

最佳答案

但是我已经到了功能的下一阶段
  太依赖于旧代码了,看来我会
  基本上必须从项目中运行主体(或至少大部分
  设置),以便能够对我最新的课程进行单元测试。


我遇到过这类问题。要求您编写一个包含4种方法的小类。

但是,不幸的是,您的代码需要创建遗留类的对象。因此,您需要构建遗留代码库,将代码与它们链接,运行3个流程,启动数据库,在数据库中填充示例数据,为流程设置配置,安排事件启动..等。

您可以通过模仿输入来避免某些痛苦(我假设您已经这样做了)。

您也可以存出旧类。如果您的控件中没有遗留类的源代码,则甚至可以有选择地对遗留类的方法进行存根(通过将存根库放在编译器的命令行上,而不是放置在实际遗留库之前)。

处理单元测试中出现的不同类型的问题有不同的技巧。如果您有特定的问题,可以将其添加到问题中,以便人们可以更好地为您提供帮助。

关于c++ - 如何正确地对具有大量依赖关系的单元测试,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40295643/

10-13 06:29