2013-03-26 33 views
2

我有一种方法,其中包含在发布模式和调试模式之间变化的逻辑。它并不是先进的,但我仍然想要一个单元测试,因为我的应用程序将用于更大的图片,并且我想将用户重定向到其他网站(如果它未在发布模式下使用)。始终在Release模式下运行单元测试

现在对我的问题,有什么办法强制单元测试运行在发布模式?我不想每次运行我的单元测试时手动更改构建配置。

回答

1

而不是在发布模式下运行你的单元测试,你可以创建一个测试缝,以便控制你想要引发的行为。你可能可以这样:

public class Foo { 

    public int Bar() { 
     if (IsDebugModeEnabled()) { 
     return 1; 
     } else { 
     return 0; 
     } 
    } 

    public boolean IsDebugModeEnabled() { 
     #if DEBUG 
     return true; 
     #else 
     return false; 
     #endif 
    } 
} 

这样你有两个选项来测试你的逻辑路径。您可以创建子类Foo并覆盖IsDebugModeEnabled或使用部分模拟来直接设置返回值。

+0

对不起,没有回应,离开了。这听起来像一个整洁的解决方案和一个更像单元测试的方法!谢谢 – Simon 2013-04-04 07:52:54

相关问题