有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何测试动态web项目?

我在eclipse中的一个导入Web项目中工作

我希望在本地计算机上进行工作和测试,所以我不希望某些类调用web服务或运行部分代码。通知在测试模式下运行的代码的最佳方式是什么。我是否应该创建一个servlet,以便在会话上下文中放置一个测试标志?或者我应该直接在查询字符串中调用任何带有测试标志的servlet,比如http://testserver/application/servlet.do?teste=true,或者有其他更好的方法来实现这一点。我只想学习最佳实践


共 (2) 个答案

  1. # 1 楼答案

    正如happymeal所指出的,您可能会更好地保留所有代码,并让它调用您提到的web服务的“测试”版本

    但是,为了回答您的问题,您可以在“Configuration”类中设置一个静态标志,并以各种方式进行设置。 设置标志的一种方法是使用-Dmycompany。配置在服务器命令行上,TestMode=true

    示例代码:

    public class Configuration {
      /**
       * Whether the app is in test mode. This can be set with a -D at startup or by some
       * other code calling "setTestMode".
       */
      private static boolean TEST_MODE = Boolean.getBoolean('mycompany.Configuration.TestMode');
    
      public static boolean isTestMode() {
        return testMode;
      }
    
      public static void setTestMode(boolean b) {
        testMode = b;
      }
    }
    

    要检查您是否处于测试模式,您的代码可以调用“isTestMode()”——就这么简单

  2. # 2 楼答案

    我在服务器上的某个地方放了一个简单的配置属性文件,其中有一个“testing”值。可能在jndi属性文件中。在应用程序启动时加载该值。这样,如果我想从“测试”模式切换到“实时”模式,我可以在不重建应用程序的情况下进行更改