Index: test/edu/ucsb/nceas/MCTestCase.java
===================================================================
--- test/edu/ucsb/nceas/MCTestCase.java	(revision 4718)
+++ test/edu/ucsb/nceas/MCTestCase.java	(revision 4719)
@@ -99,7 +99,8 @@
 				new SortedProperties("build/tests/test.properties");
 			testProperties.load();
 			String metacatContextDir = testProperties.getProperty("metacat.contextDir");
-			PropertyService.getInstance(metacatContextDir + "/WEB-INF");
+			PropertyService.getTestInstance(metacatContextDir + "/WEB-INF");
+//			PropertyService.getInstance();
 		    String printDebugString = PropertyService.getProperty("test.printdebug");
 		    printDebug = Boolean.parseBoolean(printDebugString);
 
Index: test/edu/ucsb/nceas/metacat/clientview/ClientViewHelperTest.java
===================================================================
--- test/edu/ucsb/nceas/metacat/clientview/ClientViewHelperTest.java	(revision 4718)
+++ test/edu/ucsb/nceas/metacat/clientview/ClientViewHelperTest.java	(revision 4719)
@@ -61,7 +61,8 @@
         if (DOWNLOAD_DATA_DOCID.equals("")) 
             fail("Please set the class property DOWNLOAD_DATA_DOCID before running this test.");
         
-        PropertyService.getInstance(PATH_TO_PROPERTIES);
+//        PropertyService.getInstance(PATH_TO_PROPERTIES);
+        PropertyService.getInstance();
         
         clientViewBean = new ClientView();
         clientViewBean.setUsername(USR);
Index: test/edu/ucsb/nceas/metacattest/QuerySpecificationTest.java
===================================================================
--- test/edu/ucsb/nceas/metacattest/QuerySpecificationTest.java	(revision 4718)
+++ test/edu/ucsb/nceas/metacattest/QuerySpecificationTest.java	(revision 4719)
@@ -94,7 +94,8 @@
     {
   	  try
   	  {
-		  PropertyService.getInstance("build/tests");
+//		  PropertyService.getInstance("build/tests");
+		  PropertyService.getInstance();
   		  MetacatUtil.pathsForIndexing 
   		         = MetacatUtil.getOptionList(PropertyService.getProperty("xml.indexPaths"));
   	  }
@@ -121,7 +122,8 @@
     {
         super.setUp();
         try {
-  		  	PropertyService.getInstance("build/tests");
+//  		  	PropertyService.getInstance("build/tests");
+  		  	PropertyService.getInstance();
             String xmlfile = "./test/query.xml";
             xml = new FileReader(new File(xmlfile));
         } catch (FileNotFoundException e) {
Index: test/edu/ucsb/nceas/metacattest/UploadIPCCDataTest.java
===================================================================
--- test/edu/ucsb/nceas/metacattest/UploadIPCCDataTest.java	(revision 4718)
+++ test/edu/ucsb/nceas/metacattest/UploadIPCCDataTest.java	(revision 4719)
@@ -81,7 +81,8 @@
 	  {
 		  try
 		  {
-			  PropertyService.getInstance("build/tests");
+//			  PropertyService.getInstance("build/tests");
+			  PropertyService.getInstance();
 			  MetacatUtil.pathsForIndexing 
 			         = MetacatUtil.getOptionList(PropertyService.getProperty("xml.indexPaths"));
 		  }
Index: test/edu/ucsb/nceas/metacattest/BuildIndexTest.java
===================================================================
--- test/edu/ucsb/nceas/metacattest/BuildIndexTest.java	(revision 4718)
+++ test/edu/ucsb/nceas/metacattest/BuildIndexTest.java	(revision 4719)
@@ -78,7 +78,8 @@
 	/* Initialize properties */
 	static {
 		try {
-			PropertyService.getInstance("build/tests");
+//			PropertyService.getInstance("build/tests");
+			PropertyService.getInstance();
 			MetacatUtil.pathsForIndexing = MetacatUtil.getOptionList(PropertyService
 					.getProperty("xml.indexPaths"));
 		} catch (Exception e) {
@@ -104,7 +105,8 @@
 	public void setUp() {
 		try {
 			DatabaseService.getInstance();
-			PropertyService.getInstance("build/tests");
+//			PropertyService.getInstance("build/tests");
+			PropertyService.getInstance();
 			metacatUrl = PropertyService.getProperty("test.metacatUrl");
 		} catch (ServiceException se) {
 			fail(se.getMessage());
Index: src/edu/ucsb/nceas/metacat/service/PropertyService.java
===================================================================
--- src/edu/ucsb/nceas/metacat/service/PropertyService.java	(revision 4718)
+++ src/edu/ucsb/nceas/metacat/service/PropertyService.java	(revision 4719)
@@ -77,6 +77,8 @@
 	private static String authMetaDataFilePath = null;
 	private static PropertiesMetaData authMetaData = null;
 	
+	private static boolean testInstance = false;
+	private static String testConfigDir = null;
 	
 	private static Logger logMetacat = Logger.getLogger(PropertyService.class);
 
@@ -100,7 +102,6 @@
 	/**
 	 * Get the single instance of PropertyService.
 	 * 
-	 * @param servletContext the context we will use to get relative paths
 	 * @return the single instance of PropertyService
 	 */
 	public static PropertyService getInstance() throws ServiceException {
@@ -111,6 +112,24 @@
 		return propertyService;
 	}
 	
+	/**
+	 * Get the single instance of PropertyService for test purposes.  In this
+	 * case, we allow the configuration directory to be passed in.
+	 * 
+	 * @param configDir the configuration directory we need to look in
+	 * @return the single instance of PropertyService
+	 */
+	public static PropertyService getTestInstance(String configDir) throws ServiceException {
+		if (propertyService == null) {
+			
+			testInstance = true;
+			testConfigDir = configDir;
+			
+			propertyService = new PropertyService();
+		}
+		return propertyService;
+	}
+	
 	public boolean refreshable() {
 		return true;
 	}
@@ -137,7 +156,12 @@
 		
 		logMetacat.debug("Initializing PropertyService");
 		
-		String configDir = ServiceService.getRealConfigDir();
+		String configDir;
+		if (testInstance) {
+			configDir = testConfigDir;
+		} else {
+			configDir = ServiceService.getRealConfigDir();
+		}
 
 		// mainProperties will hold the primary configuration values for metacat.
 		mainPropertiesFilePath = configDir + FileUtil.getFS() + MAIN_CONFIG_NAME;
